📄 partikel.cpp
字号:
#include "stdio.h"
#include <math.h>
#include <windows.h>
#include <gl\gl.h> // Header File For The OPenGL32 Library
#include <gl\glu.h> // Header File For The GLu32 Library
#include <gl\glaux.h> // Header File For The GLu32 Library
#include "vectors.h"
#include "Partikel.h"
#define PartikelBrems 0.95
#define PartikelFall 0.01
tP3D *PartPos;
tP4D *PartCol;
tP2D *PartTex;
unsigned long *PartIndex;
long Particles;
tPartikel *Partikel;
void InitPartikel()
{
Partikel=(tPartikel*)malloc(sizeof(tPartikel)*MaxParticles);
}
void CalcPartikel()
{
tPartikel *Temp;
long It;
for(It=0;It<Particles;It++)
{
Temp=(Partikel+It);
vAdd3(&Temp->Pos,&Temp->Speed);
Temp->Speed=vAdd(vMulK(Temp->Speed,PartikelBrems),vSet(0,-PartikelFall,0));
Temp->Life--;
if(Temp->Life<=0)
{
Particles--;
*(Partikel+It)=*(Partikel+Particles);
}
}
}
void AddPartikel(tP3D Pos,tP3D Color,tP3D Speed,long MaxLife,float Size)
{
tPartikel *NewP;
if(Particles>=MaxParticles) return;
NewP=(Partikel+Particles);
Particles++;
NewP->Pos=Pos;
NewP->Speed=Speed;
NewP->Color=Color;
NewP->MaxLife=MaxLife;
NewP->Life=MaxLife;
NewP->Size=Size;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -