| 
 | 
 
使用盖莫游戏引擎在线程中渲染的简单例子 
绘制简单的几何体小例子 
比较简单 
代码如下: 
#include <GEngine/GaiMo.hpp> 
  
core::Color color1(0.0f,0.0f,1.0f),color2(0.0f,1.0f,0.0f); 
core::Color color3(1.0f,0.0f,0.0f),color4(1.0f,0.0f,1.0f); 
core::Color color5(1.0f,1.0f,0.0f),color6(0.0f,1.0f,1.0f);  
 
core: evice *device = NULL; 
 
ThreadId id = 0;  
bool flag = true;  
 
void G_CALL Render(void* ptr) 
{ 
   device->AttachRender(); 
   do 
   {     
      BEGIN_LOOP(device)   
         //! 绘制矩形 
         core::Render::SetCurrentColor(color1); 
         core::Render::FillRect(100,120,50,50); 
         //! 绘制矩形 
         core::Render::SetCurrentColor(color2); 
                 core::Render::DrawRect(100,180,50,50); 
                 //! 绘制网格 
         core::Render::SetCurrentColor(color3); 
                 core::Render::DrawGrid(Point(10,10),Point(20,20),Point(5,5)); 
                 //! 绘制变色矩形 
                 core::Render::DrawRaisedRectangle(libmath::Rect<float>(250,50,50,50),color5,color6); 
                 //! 绘制三角形 
         core::Render::SetCurrentColor(color4); 
         core::Render::DrawTriangle(Point(200,180),Point(200,270),Point(290,110),true); 
      END_LOOP(device);                                       
   }while(flag);             
} 
  
int  Main() 
{                            
    device = core::InitDevice("线程渲染"); 
    device->Ortho2D(); 
    device->DetachRender(); 
    id = device->CreateThread(Render,NULL); 
    BEGIN_LOOP(device)        
       if(device->GetInput()->IsPressedKey(KEY_BACKSPACE) == true) 
         flag = false;           
    END_LOOP(device) 
     
    device->Close(); 
    device->Drop();  
 
    return 1;  
} 
贴图为: 
 
  |   
 
 
 
 |