void draw_options_menu_bg(MenuData* menu) { draw_main_menu_bg(menu, 0, 0, 0.05, "abstract_brown", "stage1/cirnobg"); r_mat_push(); r_mat_scale(SCREEN_W, SCREEN_H, 1); r_shader_standard_notex(); r_mat_translate(0.5,0.5,0); r_color(RGBA(0, 0, 0, 0.5)); r_draw_quad(); r_mat_pop(); r_shader_standard(); r_color4(1, 1, 1, 1); }
void Draw_Dxf::addArc(const DL_ArcData& data) { RGBA color = RGBA(150,150,150); Shape* p; if(data.angle1 < data.angle2) { p = CreateArc(_painter,RGBA(255,255,255),(FLOAT)data.cx,(FLOAT)data.cy,(FLOAT)data.radius,(FLOAT)data.angle1,(FLOAT)(data.angle2-data.angle1)); p->regen(); } else { p = CreateArc(_painter,RGBA(255,255,255),(FLOAT)data.cx,(FLOAT)data.cy,(FLOAT)data.radius,(FLOAT)data.angle1,(FLOAT)(360+data.angle2-data.angle1)); p->regen(); } TCHAR* layerName; if(_isBlockOpen) _block->insert(p); else { switch(_entityType) { case NONE : for(UINT i=0; i<_layers->size(); i++) { layerName = _layers->at(i)->getName(); if(0 == _tcscmp(layerName,String2TCHAR(attributes.getLayer()))) { _layers->at(i)->insert(p); _layers->at(i)->getLineColor(color); break; } } break; } } INT32 clValue = attributes.getColor(); if(clValue != 256) color = CL2RGBA(clValue); p->setLineColor(color); }
/** * 从profile中读取大头像, 如果本地没有则进行下载 * * \param pApp * \param ResponseInfoPhoto * * \return */ Boolean TPhotosGetAlbumsForm::_UpdateProfilePhoto(TApplication* pApp, tResponseUsersGetInfo* ResponseInfoPhoto) { if(ResponseInfoPhoto == NULL) return FALSE; if(ResponseInfoPhoto->nArraySize > 0) { TBitmap* pDownLoadBitmap = NULL; pDownLoadBitmap = LoadImgByUrl(ResponseInfoPhoto->Array[0].headurl); if(pDownLoadBitmap == NULL) { RenRenAPICommon_DownloadPhoto(ResponseInfoPhoto->Array[0].headurl, this->GetWindowHwndId(), FEED_PROFILE_IMAGE_INDEX); } else { TMaskButton* pLogo = NULL; pLogo = static_cast<TMaskButton*>(GetControlPtr(m_ProfileImageID)); if(pLogo) { TRectangle rc; TBitmap * pProfileImageTmp = NULL; //Profile的头像 pLogo->GetBounds(&rc); pProfileImageTmp = TBitmap::Create(RR_HEAD_W, RR_HEAD_W, pDownLoadBitmap->GetDepth()); pProfileImageTmp->QuickZoom(pDownLoadBitmap, TRUE, TRUE,RGBA(0,0,0,255)); pLogo->SetCaption(TUSTR_Re_NULL,0,0); pLogo->SetImage(pProfileImageTmp, (rc.Width()-pProfileImageTmp->GetWidth())/2, (rc.Height()-pProfileImageTmp->GetHeight())/2); pLogo->Draw(); //如果先Desroy,则会崩溃,很奇怪,原因不明,暂时这么处理 if( pProfileImage != NULL) { pProfileImage->Destroy(); pProfileImage = NULL; } pProfileImage = pProfileImageTmp; } //释放图片 pDownLoadBitmap->Destroy(); pDownLoadBitmap = NULL; } } return TRUE; }
void CMapEdit::Draw() { if(m_nCurrentStatus == MapEdit_Status_Free) m_Map.Draw(m_nCurDrawMapFlag); else if(m_nCurrentStatus == MapEdit_Status_Select) { if(m_pTexture!=NULL) { m_pVideoDriver->RenderQuad(m_Map.GetBackGroundTexture(),0,0,DISPLAY_WIDTH,DISPLAY_HEIGHT,0,0,1,1,0,0xffffffff); m_pVideoDriver->RenderQuad(m_pTexture, m_nDisplayLeft,m_nDisplayTop, DISPLAY_WIDTH, DISPLAY_HEIGHT, 0, 0 ,1,1,0,RGBA(255,255,255,100)); } } //Draw cursor m_pVideoDriver->RenderQuad(m_pTexture, 0, 0, CELL_SIZE, CELL_SIZE, m_nCurX, m_nCurY,1,1,0,RGBA(255,255,255,100)); }
static void Command_Help(const CommandConsoleArgs& args) { if(args.m_argList.size() == 1) { _console->ShowAllRegisteredCmd(); } else if(args.m_argList.size() == 2) { _console->ShowCommandDesc(args.m_argList[1].c_str()); } else { _console->DrawSentence("ERROR: Wrong Arguments. Usage : <Help> <Command>.",RGBA(1.0f,0.0f,0.0f,1.0f)); } };
AreaLight::AreaLight(std::ifstream &stream, Matrix4x4 transform) { m_transform = transform; stream.read( reinterpret_cast<char *>( &m_strength), sizeof m_strength); stream.read( reinterpret_cast<char *>( &(m_size[0])), sizeof m_size[0]); stream.read( reinterpret_cast<char *>( &(m_size[1])), sizeof m_size[1]); //m_color = RGBA(stream); m_color = RGBA(1.0f); m_color[0] = pow(m_color[0],2.2f); m_color[1] = pow(m_color[1],2.2f); m_color[2] = pow(m_color[2],2.2f); m_normal = Vec3(0.0f,0.0f,1.0f); m_transform.multDirMatrix(m_normal, m_normal); m_area = m_size[0] * m_size[1]; }
DWORD CPNGFile::GetPix(int iX, int iY) { // image loaded? if (!pImageData) return 0; // return pixel value unsigned char *pPix=pImageData+iY*iRowSize+iX*iPixSize; switch (iClrType) { case PNG_COLOR_TYPE_RGB: return C4RGB(pPix[2], pPix[1], pPix[0]); case PNG_COLOR_TYPE_RGB_ALPHA: return RGBA(pPix[2], pPix[1], pPix[0], pPix[3]); } return 0; }
int getThemeColor(Vbitmap *vbitmap) { int colors[8]; int scores[8]; int ncolors; ncolors = getThemeColors(vbitmap, sizeof(colors) / sizeof(colors[0]), colors, scores); if (ncolors <= 0 || colors == NULL) { return RGBA(0, 0, 0, 0); } return colors[0]; }
void ParticleUpdateFunctions::DebrisUpdate(Emitter& emitter,Particle& particle,float deltaTime) { if(particle.surviveTime == emitter.survivalTime) { float yawRadians = (rand() & MOD_MASK_1024) * 0.00628f; particle.velocity.x = 2.0f*cos(yawRadians); particle.velocity.y = 2.0f*sin(yawRadians); particle.color = RGBA(0.0f,0.8f,1.0f,1.0f); } Vec3f force; particle.position += particle.velocity * deltaTime; force += particle.velocity * -particle.c + Vec3f(0.0f,0.0f,-9.8f*particle.mass); float massOverOne = 1.0f/particle.mass; Vec3f acceleration = force * massOverOne; particle.velocity += acceleration * deltaTime; particle.surviveTime -= deltaTime; if(particle.position.z < -2.0f) { particle.velocity.z *= -0.5f; } if(particle.surviveTime < 0) { Vec3f positionDifference = emitter.maxPos - emitter.minPos; Vec3f randomCoefficient = Vec3f(((rand() & MOD_MASK_1024) * 0.001f),((rand() & MOD_MASK_1024) * 0.001f),((rand() & MOD_MASK_1024) * 0.001f)); particle.position = emitter.minPos + (positionDifference * randomCoefficient); particle.surviveTime = emitter.survivalTime; particle.velocity = emitter.velocity; particle.color = RGBA(0.0f,0.8f,1.0f,1.0f); } }
bool tmClearAllWarning(void) { oslClearScreen(RGBA(0, 0, 0, 255)); bool x = FALSE; while (!osl_quit) { oslStartDrawing(); oslReadKeys(); tmDrawGrid(); oslDrawFillRect(0, 0, 480, 272, RGBA(0, 0, 0, 125)); oslSetTextColor(RGBA(255,0,0,255)); oslDrawString(200, 50, "WARNING:"); oslSetTextColor(RGBA(255,255,255,255)); oslDrawString(3, 70, "Are you sure you want to clear all grids? This cannot be undone."); oslDrawString(13, 80, "Press X to clear all grids, or press O to cancel."); if (osl_keys->pressed.cross) { x = TRUE; break; } if (osl_keys->pressed.circle) break; oslEndDrawing(); oslSyncFrame(); } return x; }
void ParticleUpdateFunctions::LeafUpdate(Emitter& emitter,Particle& particle,float deltaTime) { Vec3f force = Vec3f(((rand() & MOD_MASK_1024) * 0.002f - 1.0f),((rand() & MOD_MASK_1024) * 0.002f - 1.0f),((rand() & MOD_MASK_1024) * 0.002f - 1.0f)); particle.color = RGBA(1.0f,1.0f,1.0f,0.5f); particle.position += (particle.velocity) * deltaTime; force += (particle.velocity - windForce) * - particle.c; float massOverOne = 1.0f/particle.mass; Vec3f acceleration = force * massOverOne; particle.velocity += acceleration * deltaTime; particle.surviveTime -= deltaTime; if(particle.surviveTime < 0) { Vec3f positionDifference = emitter.maxPos - emitter.minPos; Vec3f randomCoefficient = Vec3f(((rand() & MOD_MASK_1024) * 0.001f),((rand() & MOD_MASK_1024) * 0.001f),((rand() & MOD_MASK_1024) * 0.001f)); particle.position = emitter.minPos + (positionDifference * randomCoefficient); particle.surviveTime = emitter.survivalTime; float offset = 512.f; particle.velocity = Vec3f((((rand() & MOD_MASK_1024) - offset) * 0.001f),(((rand() & MOD_MASK_1024) - offset) * 0.001f),(((rand() & MOD_MASK_1024) - offset) * 0.001f)) * 50.0f + emitter.velocity; particle.color = RGBA(1.0f,1.0f,1.0f,0.5f); } }
GdkPixbuf *sp_cursor_pixbuf_from_xpm(char const *const *xpm, GdkColor const& black, GdkColor const& white, guint32 fill, guint32 stroke) { int height = 0; int width = 0; int colors = 0; int pix = 0; std::stringstream ss (std::stringstream::in | std::stringstream::out); ss << xpm[0]; ss >> height; ss >> width; ss >> colors; ss >> pix; std::map<char, RGBA> colorMap; for (int i = 0; i < colors; i++) { char const *p = xpm[1 + i]; g_assert(*p >=0); unsigned char const ccode = (guchar) *p; p++; while (isspace(*p)) { p++; } p++; while (isspace(*p)) { p++; } if (strcmp(p, "None") == 0) { colorMap[ccode] = RGBA(); } else if (strcmp(p, "Fill") == 0) { colorMap[ccode] = RGBA(SP_RGBA32_R_U(fill), SP_RGBA32_G_U(fill), SP_RGBA32_B_U(fill), SP_RGBA32_A_U(fill)); } else if (strcmp(p, "Stroke") == 0) { colorMap[ccode] = RGBA(SP_RGBA32_R_U(stroke), SP_RGBA32_G_U(stroke), SP_RGBA32_B_U(stroke), SP_RGBA32_A_U(stroke)); } else if (strcmp(p, "#000000") == 0) { colorMap[ccode] = RGBA(black.red, black.green, black.blue, 255); } else if (strcmp(p, "#FFFFFF") == 0) { colorMap[ccode] = RGBA(white.red, white.green, white.blue, 255); } else { colorMap[ccode] = RGBA(); } } guint32 *pixmap_buffer = new guint32[width * height]; for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { std::map<char, RGBA>::const_iterator it = colorMap.find(xpm[1 + colors + y][x]); pixmap_buffer[y * width + x] = (it == colorMap.end()) ? 0u : it->second; } } return gdk_pixbuf_new_from_data(reinterpret_cast<guchar*>(pixmap_buffer), GDK_COLORSPACE_RGB, TRUE, 8, width, height, width * sizeof(guint32), free_cursor_data, NULL); }
bsglWidget::bsglWidget(int x, int y, int width, int height) { bsgl = bsglCreate(BSGL_VERSION); x_ = x; y_ = y; w_ = width; h_ = height; col_ = RGBA(255, 255, 255, 255); focus_ = false; quad_.v[0].z = 0.f; quad_.v[1].z = 0.f; quad_.v[2].z = 0.f; quad_.v[3].z = 0.f; quad_.tex = 0; quad_.blend = BLEND_DEFAULT; }
// Reload The Sprite PyObject* Python::B2D_ReloadSprite (PyObject* Self, PyObject* Args){ // Create Variables int spriteReference; float x, y; int width, height; char* texturePath, *colour = "FFFFFFFF"; // Look For Errors if (!PyArg_ParseTuple (Args, "ffiis|s", &spriteReference, &x, &y, &width, &height, &texturePath, &colour)){ ParsePyTupleError (__func__, __LINE__); } RGBA rgba = RGBA (colour); // Set Function Python::spriteList[spriteReference].Reload (Vector2::Point (x, y), width, height, texturePath, rgba); Py_RETURN_NONE; }
void DeveloperConsole::Draw() { m_widthTable.clear(); OpenGLRenderer::BindWhiteTexture(); OpenGLRenderer::DrawVertexWithVertexArray2D(m_backgroundLayer,8,OpenGLRenderer::SHAPE_QUADS,m_screenSizes.x,m_screenSizes.y); for(size_t index = 1; index < m_logLines.size(); index++) { size_t LogStartLine = m_logLines.size() - index - m_currentStartDrawingLineNum; if(LogStartLine != 0) DrawSentence(m_logLines[index].text.c_str(),m_logLines.size() - index - m_currentStartDrawingLineNum,m_logLines[index].fontSize,m_logLines[index].color,m_logLines[index].font); } DrawSentence(m_logLines[0].text.c_str(),0,m_logLines[0].fontSize,RGBA(),m_logLines[0].font); DrawCursor(); }
void MainMenuState::Render() const { g_theRenderer->ClearScreen(0.f, 0.f, 0.f); AABB2 quad = AABB2(Vector2(0.f, 0.f), Vector2(1600.f, 900.f)); g_theRenderer->DrawTexturedAABB2(m_screenImage, RGBA::WHITE, quad); float frequency = 1; // Frequency in Hz float opacity = 0.5f * (1 + sin(2.f * pi * frequency * m_age)); //float opacity = 0.5f * sin(m_age * 4.f) + 1.f; //opacity = ClampFloat(opacity, 0.f, 1.f); String enterText = StringUtils::Stringf("PRESS ENTER"); m_squirrelFont->DrawText2D(Vector2(470.f, 100.f), enterText, 60.f, RGBA(1.f, 1.f, 1.f, opacity), NULL); }
void WarningScreen::draw() { oslDrawImageXY(mCover,0,0); oslIntraFontSetStyle(gFont, 1.2f,RGBA(175,137,62,255), RGBA(0,0,0,0),INTRAFONT_ALIGN_CENTER); oslDrawString(240,20,Resource::STR_WARNING_CAPTION); oslIntraFontSetStyle(gFont, 0.6f,RGBA(175,137,62,255), RGBA(0,0,0,0),INTRAFONT_ALIGN_CENTER); oslDrawString(240,100,Resource::STR_WARNING_TEXT); oslDrawImageXY(mBack, (430) - (mBack->stretchX), (272) - (mBack->stretchY)); oslIntraFontSetStyle(gFont, 0.7f,RGBA(175,137,62,255), RGBA(0,0,0,0),INTRAFONT_ALIGN_CENTER); oslDrawString((510) - mBack->stretchX,(272) - (mBack->stretchY/2),Resource::STR_BACK_SK); }
//update particle with; //The time since the last update void Particle::update(float dt) { //trick to make it that the first update of the particle saves starting values if (Age == 0) { _startColour = Colour; _startScale = Scale; } Age += dt; Scale = _startScale + (EndScale - _startScale) * (Age / MaxAge); Position = Position + (MoveVector * dt); Colour = RGBA(_startColour, EndColour, (Age / MaxAge)); }
/* call-seq: setColor(r, g, b, a = 255) setColor(col) Sets the sahpe's color. If it has more than one color, all are set to the same value. */ VALUE Shape_setColor(int argc, VALUE *argv, VALUE self) { Shape &ref = getRef<Shape>(self); OSL_COLOR _col = 0; if (argc >= 3) { int alpha = 255; if (argc > 3) alpha = FIX2INT(argv[3]); _col = RGBA(FIX2INT(argv[0]), FIX2INT(argv[1]), FIX2INT(argv[2]), alpha); } else if (argc == 1) _col = hash2col(argv[0]); ref.setColor(_col); return Qnil; }
void grlib_DrawIRCursor (void) { ir_t ir; static u8 alphadec = 255; static s16 alpha = 0; // Start with cursor hidden static u32 cursorActivity = 0; static u32 startms = 0; u32 ms = ticks_to_millisecs(gettime()); WPAD_IR (0, &ir); if (ms > startms) { if (cursorActivity == grlibSettings.cursorActivity) { alpha -= alphadec; if (alpha < 0) alpha = 0; } else { alpha = 255; alphadec = 5; cursorActivity = grlibSettings.cursorActivity; } startms = ms+100; } if (ir.valid) { grlib_irPos.x = ir.x; grlib_irPos.y = ir.y; grlib_irPos.valid = 1; alpha = 255; } else { grlib_irPos.valid = 0; } GRRLIB_DrawImg( grlib_irPos.x, grlib_irPos.y, grlibSettings.pointer[0], 0, 1, 1, RGBA(255, 255, 255, alpha) ); }
NTBVertex3D_PCT* Fonts::CreateNTBVertsFromStringVector(Vector3 startPos, std::vector<std::string>& currentStringVec, float scale, RGBA& color, int& size) { size = 0; std::vector<NTBVertex3D_PCT> verts; RGBA fadeColor = RGBA(color.GetRed(), color.GetGreen(), color.GetBlue(), fadeScale); for (int k = (int)currentStringVec.size() - 1; k >= 0; k--) { size_t wordsLength = currentStringVec[k].length(); float startPosX = startPos.x; float startPosY = startPos.y; float yOffsetFloat = 0.0f; m_curserPos.x = startPosX; for (size_t i = 0; i < wordsLength; i++) { for (unsigned int j = 0; j < m_characters.size(); j++) { if (m_characters[j].m_ID != currentStringVec[k][i]) { continue; } Vector2 mins(startPosX + scale*m_characters[j].m_OffsetXY.x, startPosY - scale*(m_characters[j].m_OffsetXY.y + m_characters[j].m_GLYPHWH.y)); Vector2 maxs(startPosX + scale*(m_characters[j].m_OffsetXY.x + m_characters[j].m_GLYPHWH.x), startPosY - scale*(m_characters[j].m_OffsetXY.y)); mins += Vector2(0.0f, m_scale * (currentStringVec.size() - k - 1)); maxs += Vector2(0.0f, m_scale * (currentStringVec.size() - k - 1)); verts.push_back(NTBVertex3D_PCT(Vector3(mins.x, maxs.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); verts.push_back(NTBVertex3D_PCT(Vector3(mins.x, mins.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); verts.push_back(NTBVertex3D_PCT(Vector3(maxs.x, mins.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); verts.push_back(NTBVertex3D_PCT(Vector3(mins.x, maxs.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); verts.push_back(NTBVertex3D_PCT(Vector3(maxs.x, mins.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); verts.push_back(NTBVertex3D_PCT(Vector3(maxs.x, maxs.y - yOffsetFloat, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), Vector3(0.0F, 0.0F, 0.0F), fadeColor)); startPosX += scale*m_characters[j].m_XAdvance; break; } } yOffsetFloat += 0.0f; } NTBVertex3D_PCT* passOutVerts = new NTBVertex3D_PCT[verts.size()]; memcpy(passOutVerts, verts.data(), verts.size()*sizeof(NTBVertex3D_PCT)); size = verts.size(); return passOutVerts; }
RGBA CEdit::CalcColour(int nLumina,RGBA chroma) { int r,g,b; r=chroma.r; g=chroma.g; b=chroma.b; r=r*nLumina/128; g=g*nLumina/128; b=b*nLumina/128; if (r>255) r=255; if (g>255) g=255; if (b>255) b=255; return RGBA(r,g,b,chroma.a); }
VOID ViewStrip::DrawAxis() { INT32 dist = 10; FLOAT signX = 1; FLOAT signY = 1; _pStripPainter->drawBegin(); _pStripPainter->setOutlineColor(RGBA(200, 100, 50, 200)); _pStripPainter->drawLine(500, 0, -500, 0); _pStripPainter->drawLine(0, 500, 0, -500); _pStripPainter->drawBitmapText( signX * _fdevice_size_x/2 + (signX * signX *dist), 0, _T("X+")); _pStripPainter->drawBitmapText(0, signY * _fdevice_size_y/2 + (signY * signY *dist), _T("Y+")); _pStripPainter->drawBitmapText( signX * -_fdevice_size_x/2 - (signX * signX *dist), 0, _T("X-")); _pStripPainter->drawBitmapText(0, signY * -_fdevice_size_y/2 - (signY * signY *dist), _T("Y-")); _pStripPainter->drawEnd(); }
Vertex3D_PCT* Fonts::CreateConsoleCharactersVerts(Vector3 startPos, float scale, RGBA& color, int& size) { size = 0; std::vector<Vertex3D_PCT> verts; RGBA fadeColor = RGBA(color.GetRed(), color.GetGreen(), color.GetBlue(), fadeScale); for (int k = (int)m_log.size()-1; k >= 0; k--) { size_t wordsLength = m_log[k].length(); float startPosX = startPos.x; float startPosY = startPos.y; m_curserPos.x = startPosX; for (size_t i = 0; i < wordsLength; i++) { for (unsigned int j = 0; j < m_characters.size(); j++) { if (m_characters[j].m_ID != m_log[k][i]) { continue; } Vector2 mins(startPosX + scale*m_characters[j].m_OffsetXY.x, startPosY - scale*(m_characters[j].m_OffsetXY.y + m_characters[j].m_GLYPHWH.y)); Vector2 maxs(startPosX + scale*(m_characters[j].m_OffsetXY.x + m_characters[j].m_GLYPHWH.x), startPosY - scale*(m_characters[j].m_OffsetXY.y)); mins += Vector2(0.0f, m_scale * (m_log.size() - k - 1)); maxs += Vector2(0.0f, m_scale * (m_log.size() - k - 1)); verts.push_back(Vertex3D_PCT(Vector3(mins.x, maxs.y, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y), fadeColor)); verts.push_back(Vertex3D_PCT(Vector3(mins.x, mins.y, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), fadeColor)); verts.push_back(Vertex3D_PCT(Vector3(maxs.x, mins.y, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), fadeColor)); verts.push_back(Vertex3D_PCT(Vector3(mins.x, maxs.y, startPos.z), Vector2(m_characters[j].m_XY.x, m_characters[j].m_XY.y), fadeColor)); verts.push_back(Vertex3D_PCT(Vector3(maxs.x, mins.y, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y + m_characters[j].m_WH.y), fadeColor)); verts.push_back(Vertex3D_PCT(Vector3(maxs.x, maxs.y, startPos.z), Vector2(m_characters[j].m_XY.x + m_characters[j].m_WH.x, m_characters[j].m_XY.y), fadeColor)); startPosX += scale*m_characters[j].m_XAdvance; break; } } } Vertex3D_PCT* passOutVerts = new Vertex3D_PCT[verts.size()]; memcpy(passOutVerts,verts.data(),verts.size()*sizeof(Vertex3D_PCT)); size = verts.size(); return passOutVerts; }
void anim(){ ge_Image* img = geLoadImage("testsrc/data/ship.png"); img = geAnimateImage(img, 4, 0.125f); ge_Font* font = geLoadFont(""); geFontSize(font, 14); ge_Joystick* js = geJoystickOpen(geJoystickUpdateList(NULL)); while(1){ geJoystickRead(js); geJoystickDebugPrint(js, 0); geClearScreen(); geDrawImage(100, 100, img); geFontPrintfScreen(0, 0, font, RGBA(255, 255, 255, 255), "FPS : %d", geFps()); geSwapBuffers(); } }
VOID ViewUnitEditor::DrawAxis() { INT32 dist = 2; FLOAT signX = 1; FLOAT signY = 1; _pViewUnitPainter->drawBegin(); _pViewUnitPainter->setLineColor(RGBA(200, 100, 50, 200)); _pViewUnitPainter->drawLine(500, 0, -500, 0); _pViewUnitPainter->drawLine( 0, 500, 0, -500); _pViewUnitPainter->drawBitmapText((_pStripinfo->GetUnitXSize()) + dist, 0, _T("X+")); _pViewUnitPainter->drawBitmapText(0, (_pStripinfo->GetUnitYSize()) + dist, _T("Y+")); _pViewUnitPainter->drawBitmapText(-(_pStripinfo->GetUnitXSize()) - dist, 0, _T("X-")); _pViewUnitPainter->drawBitmapText(0, -(_pStripinfo->GetUnitYSize()) - dist, _T("Y-")); _pViewUnitPainter->drawEnd(); }
void ViewEx::onRender() { _pPainter->renderBegin(RGBA(200,200,200)); // draw x, y axis _pPainter->drawBegin(); _pPainter->drawLine(-500,0,500,0); _pPainter->drawLine(0,500,0,-500); _pPainter->drawEnd(); // draw shapes _layers.draw(); this->onSelectionRect(); _pPainter->renderEnd(); }
void Draw_Dxf::addBlock(const DL_BlockData& data) { assert(_isBlockOpen == false && "블록이 열려있는데 또 addblock"); RGBA color = RGBA(150,150,150); Block* p; _isBlockOpen = true; TCHAR* lpszBlockName = String2TCHAR(data.name); p = CreateBlock(_painter, lpszBlockName, data.flags, (FLOAT)data.bpx, (FLOAT)data.bpy); _block = p; INT32 clValue = attributes.getColor(); if(clValue != 256) color = CL2RGBA(clValue); p->setLineColor(color); }
void game_init () { int i, j, i2; targa_image_t tga; uint32_t c, r, g, b, a; GFile *fp = g_file_new_for_path("tower.tga"); GFileInputStream *fis = g_file_read(fp, NULL, NULL); targa_parse_stream(G_INPUT_STREAM(fis),&tga); /* set background zero to this bitmap */ e.main_bg[0].enable = 1; e.main_bg[0].mode = BG_MODE_INDEXED_BITMAP; e.main_bg[0].priority = 0; e.main_bg[0].center_x = 0.0; e.main_bg[0].center_y = 0.0; e.main_bg[0].center_i = 0; e.main_bg[0].center_j = 0; e.main_bg[0].expansion = 1.0; e.main_bg[0].rotation = 0.0; e.main_bg[0].bmp8.height_in_pixels = tga.header.image_height; e.main_bg[0].bmp8.width_in_pixels = tga.header.image_width; for (j = 0; j < tga.header.image_height; j++) { for (i = 0; i < tga.header.image_width; i++) { e.main_bg[0].bmp8.bmp[j][i] = tga.data.image_data[j * tga.header.image_width + i]; } } i = 0; for (c = 0; c < tga.header.color_map_length; c++) { if (tga.header.color_map_entry_size == 24 || tga.header.color_map_entry_size == 32) { r = tga.data.color_map_data[i++]; g = tga.data.color_map_data[i++]; b = tga.data.color_map_data[i++]; a = 255; } if (tga.header.color_map_entry_size == 32) a = tga.data.color_map_data[i++]; e.main_bg[0].bmp8.palette[c] = RGBA(r,g,b,a); } }
void TheGame::Render() const { m_map->Render(); if (m_isPaused) { Vector2 screenMins = Vector2(0.f, 0.f); Vector2 screenMaxs = Vector2(TheApp::instance->GetWindowWidth(), TheApp::instance->GetWindowHeight()); Vector2 gameMaxs = Vector2(16.f, 9.f); Vector2 pauseGraphicMins = Vector2(TheApp::instance->GetWindowWidth() / 8.f, TheApp::instance->GetWindowHeight() / 8.f); Vector2 pauseGraphicMaxs = Vector2(TheApp::instance->GetWindowWidth() * (7.f / 8.f), TheApp::instance->GetWindowHeight() * (7.f / 8.f)); RGBA pauseColor = RGBA(0.0f, 0.0f, 0.0f, 0.3f); TheRenderer::instance->PushMatrix(); TheRenderer::instance->DrawAABB(AABB2(screenMins, screenMaxs), pauseColor); TheRenderer::instance->SetOrtho(screenMins, screenMaxs); TheRenderer::instance->DrawTexturedAABB(AABB2(pauseGraphicMins, pauseGraphicMaxs), Vector2(0.f, 0.f), Vector2(1.f, 1.f), *m_pauseTexture, RGBA(1.f, 1.f, 1.f)); TheRenderer::instance->SetOrtho(screenMins, gameMaxs); TheRenderer::instance->PopMatrix(); } }