Changeset 2585


Ignore:
Timestamp:
Mar 12, 2013, 5:39:02 PM (10 years ago)
Author:
touky
Message:

12_voronoi : Added death round.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tutorial/12_voronoi.cpp

    r2582 r2585  
    1111#if defined HAVE_CONFIG_H
    1212#   include "config.h"
     13#endif
     14
     15#if defined _XBOX
     16#   define _USE_MATH_DEFINES /* for M_PI */
     17#   include <xtl.h>
     18#   undef near /* Fuck Microsoft */
     19#   undef far /* Fuck Microsoft again */
     20#elif defined _WIN32
     21#   define _USE_MATH_DEFINES /* for M_PI */
     22#   define WIN32_LEAN_AND_MEAN
     23#   include <windows.h>
     24#   undef near /* Fuck Microsoft */
     25#   undef far /* Fuck Microsoft again */
    1326#endif
    1427
     
    4962        m_cur_fbo = 0;
    5063        m_timer = -1.0f;
     64        mode = 0;
    5165    }
    5266
     
    137151
    138152            //SRC SETUP
    139             int i = 4;
    140             while (i-- > 0)
    141             {
    142                 voronoi_points.Push(vec3(rand<float>(512.f), rand<float>(512.f), .0f),
    143                                     vec2(64.f + rand<float>(64.f), 64.f + rand<float>(64.f)));
    144             }
    145            
    146             //voronoi_points.Push(vec3(511.f, 511.f, .0f), vec2(-128.f));
    147             //voronoi_points.Push(vec3(256.f, 256.f, .0f), vec2( 128.f));
    148             //voronoi_points.Push(vec3(128.f, 128.f, .0f), vec2(-128.f));
    149             //voronoi_points.Push(vec3(128.f, 400.f, .0f), vec2( 128.f));
    150             //voronoi_points.Push(vec3(400.f,  24.f, .0f), vec2(-128.f));
    151 
    152153            m_cur_fbo = VoronoiFbo;
    153154        }
     
    164165            else if (Input::WasReleased(Key::F2))
    165166                m_cur_fbo = VoronoiFbo;
    166         }
    167 
     167            else if (Input::WasReleased(Key::F3))
     168            {
     169                voronoi_points.Empty();
     170                if (mode == 0)
     171                {
     172                    int i = 4;
     173                    while (i-- > 0)
     174                        voronoi_points.Push(vec3(rand<float>(512.f), rand<float>(512.f), .0f),
     175                                            vec2(64.f + rand<float>(64.f), 64.f + rand<float>(64.f)));
     176                    mode = 1;
     177                }
     178                else
     179                {
     180                    mode = 0;
     181                }
     182            }
     183        }
     184
     185        if (mode == 0)
     186        {
     187            voronoi_points.Empty();
     188            int maxi = 6;
     189            for (int i = 0; i < maxi; ++i)
     190            {
     191                voronoi_points.Push(vec3(256.f) + 196.f * vec3((float)lol::cos(m_time + (double)i * 2.0 * M_PI / (double)maxi), (float)lol::sin(m_time + (double)i * 2.0 * M_PI / (double)maxi), .0f), vec2(.0f));
     192                voronoi_points.Push(vec3(256.f) + 128.f * vec3((float)lol::cos(-m_time + (double)i * 2.0 * M_PI / (double)maxi), (float)lol::sin(-m_time + (double)i * 2.0 * M_PI / (double)maxi), .0f), vec2(.0f));
     193                voronoi_points.Push(vec3(256.f) + 64.f *  vec3((float)lol::cos(m_time + (double)i * 2.0 * M_PI / (double)maxi), (float)lol::sin(m_time + (double)i * 2.0 * M_PI / (double)maxi), .0f), vec2(.0f));
     194                voronoi_points.Push(vec3(256.f) + 32.f *  vec3((float)lol::cos(-m_time + (double)i * 2.0 * M_PI / (double)maxi), (float)lol::sin(-m_time + (double)i * 2.0 * M_PI / (double)maxi), .0f), vec2(.0f));
     195            }
     196            voronoi_points.Push(vec3(256.f), vec2(.0f));
     197        }
    168198
    169199        temp_buffer->Bind();
     
    348378    FrameBuffer *temp_buffer;
    349379
     380    int mode;
    350381    int m_cur_fbo;
    351382    double m_time;
Note: See TracChangeset for help on using the changeset viewer.