s3oparser.h
来自「这是整套横扫千军3D版游戏的源码」· C头文件 代码 · 共 56 行
H
56 行
#ifndef S3OPARSER_H
#define S3OPARSER_H
// s3oParser.h: interface for the Cs3oParser class.
//
//////////////////////////////////////////////////////////////////////
#include "3DModelParser.h"
#include <map>
struct SS3O;
struct SS3OVertex {
float3 pos;
float3 normal;
float textureX;
float textureY;
};
struct SS3O {
std::string name;
std::vector<SS3O*> childs;
std::vector<SS3OVertex> vertices;
std::vector<unsigned int> vertexDrawOrder;
float3 offset;
int primitiveType;
unsigned int displist;
bool isEmpty;
float maxx,maxy,maxz;
float minx,miny,minz;
void DrawStatic();
~SS3O();
};
class CS3OParser
{
public:
CS3OParser();
virtual ~CS3OParser();
S3DOModel* LoadS3O(string name,float scale=1,int side=1);
LocalS3DOModel *CreateLocalModel(S3DOModel *model, vector<struct PieceInfo> *pieces);
private:
SS3O* LoadPiece(unsigned char* buf, int offset,S3DOModel* model);
void DeleteSS3O(SS3O* o);
void FindMinMax(SS3O *object);
void DrawSub(SS3O* o);
void CreateLists(SS3O *o);
void CreateLocalModel(SS3O *model, LocalS3DOModel *lmodel, vector<struct PieceInfo> *pieces, int *piecenum);
map<string,S3DOModel*> units;
};
#endif /* S3OPARSER_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?