//敵の弾の描画 void draw_Enemy_shot() { substance *sub = enemy_shot.getSub(); for (int i = 0; i < enemy_shot.getSize(); i++) { if (sub[i].flag == true) { DrawSphere3D(VGet(sub[i].x, sub[i].y, sub[i].z), SHOT_CAPSULE_R, SHOT_CAPSULE_DIVNUM, GetColor(255, 0, 0), GetColor(255, 0, 0), TRUE); } } }
//プレイヤー弾の描画 void draw_Player_shot() { substance *sub = player_shot.getSub(); for (int i = 0; i < player_shot.getSize(); i++) { if (sub[i].flag == true) { DrawSphere3D(VGet(sub[i].x, sub[i].y + SHOT_PLAYER_Y, sub[i].z), SHOT_CAPSULE_R, SHOT_CAPSULE_DIVNUM, GetColor(0, 255, 255), GetColor(0, 0, 255), TRUE); } } }
//エフェクトの描画 void draw_Effect() { effect* eff = player_shot.getEff(); for (int i = 0; i < player_shot.getSize(); i++) { if (eff[i].flag == true) { SetDrawBlendMode(DX_BLENDMODE_ALPHA, eff[i].br); DrawSphere3D(VGet(eff[i].x, eff[i].y, eff[i].z), eff[i].r, 8, GetColor(255, 0, 0), GetColor(255, 255, 255), TRUE); SetDrawBlendMode(DX_BLENDMODE_NOBLEND, 0); } } eff = enemy_shot.getEff(); for (int i = 0; i < player_shot.getSize(); i++) { if (eff[i].flag == true) { SetDrawBlendMode(DX_BLENDMODE_ALPHA, eff[i].br); DrawSphere3D(VGet(eff[i].x, eff[i].y, eff[i].z), eff[i].r, 8, GetColor(255, 0, 0), GetColor(255, 255, 255), TRUE); SetDrawBlendMode(DX_BLENDMODE_NOBLEND, 0); } } }
void Cenemy::draw() { if(state != STATE_LIVE) return; //モデルの描画 // MV1DrawModel(model); //ボディの描画 DrawCone3D(VAdd(Penemy->pos,VGet(0,15,0)),VAdd(Penemy->pos,VGet(0,7,0)),4,80,0xff4444,0xff9999,TRUE) ; DrawSphere3D(Penemy->pos,this->body_rudius,80,0xff44444,0xff9999,TRUE); DrawSphere3D(VSub(Penemy->pos,VGet(0,10,0)),3,80,0xff4444,0xff9999,TRUE); DrawCone3D(VSub(Penemy->pos,VGet(0,25,0)),VSub(Penemy->pos,VGet(0,15,0)),2,80,0xff4444,0xff9999,TRUE) ; for(int i = 0;i < 4;i++) { for(int k = 0; k < AMMO_MAX*2;k++) { if(this->enemy_shot_state[i][k] == STATE_LIVE) { DrawSphere3D(this->enemy_shot_pos[i][k],2,24,0xddffdd,0xddffdd,TRUE); } } } }
void Creticle::draw() { graph_angle += (DX_PI_F/180)*2 ; switch(Pplayer->target_type) { case FREE: DrawSphere3D(Pplayer->Preticle->pos,3,20,0x000000,0xffffff,TRUE); DrawBillboard3D(Pplayer->Preticle->pos,0.5f,0.5f,80,graph_angle,graph,TRUE,TRUE); break; case TARGET: switch (Csystem::game_mode) { case Csystem::SOLO: DrawBillboard3D(Pboss->pos,0.5f,0.5f,80,graph_angle,graph,TRUE,TRUE); break; case Csystem::ONLINE: DrawBillboard3D(Penemy->pos,0.5f,0.5f,80,graph_angle,graph,TRUE,TRUE); break; } break; } }
void Graphics::DrawSphere3D( double x, double y, double z, double r, int res, GLuint texture, float red, float green, float blue, float alpha ) { DrawSphere3D( x, y, z, r, res, texture, TEXTURE_MODE_Y_ASIN, red, green, blue, alpha ); }
void Graphics::DrawSphere3D( double x, double y, double z, double r, int res, GLuint texture, uint32_t texture_mode ) { DrawSphere3D( x, y, z, r, res, texture, texture_mode, 1.f, 1.f, 1.f, 1.f ); }
inline void SPHERE :: display(void){ DrawSphere3D(VGet(x, y, z), radius, 16, col, col, TRUE); }
void Cshot::draw() { if(state == Cobject::STATE_LIVE) DrawSphere3D(pos,this->body_rudius,8,0xddddff,0xddddff,TRUE); }