- Backend update from Raze.

This commit is contained in:
Christoph Oelckers 2022-11-06 08:42:09 +01:00
commit c55dfbcddd
11 changed files with 100 additions and 22 deletions

View file

@ -151,7 +151,7 @@ int ModelFrameHash(FSpriteModelFrame * smf)
//
//===========================================================================
unsigned FindModel(const char * path, const char * modelfile)
unsigned FindModel(const char * path, const char * modelfile, bool silent)
{
FModel * model = nullptr;
FString fullname;

View file

@ -83,6 +83,7 @@ public:
IModelVertexBuffer *GetVertexBuffer(int type) const { return mVBuf[type]; }
void DestroyVertexBuffer();
bool hasSurfaces = false;
FString mFileName;
private:
@ -90,5 +91,5 @@ private:
};
int ModelFrameHash(FSpriteModelFrame* smf);
unsigned FindModel(const char* path, const char* modelfile);
unsigned FindModel(const char* path, const char* modelfile, bool silent = false);

View file

@ -133,6 +133,7 @@ bool FMD3Model::Load(const char * path, int lumpnum, const char * buffer, int le
auto numFrames = LittleLong(hdr->Num_Frames);
auto numSurfaces = LittleLong(hdr->Num_Surfaces);
hasSurfaces = numSurfaces > 1;
numTags = LittleLong(hdr->Num_Tags);

View file

@ -222,6 +222,8 @@ bool FOBJModel::Load(const char* fn, int lumpnum, const char* buffer, int length
curSurface->faceStart = aggSurfFaceCount;
surfaces.Push(*curSurface);
delete curSurface;
hasSurfaces = surfaces.Size() > 1;
if (uvs.Size() == 0)
{ // Needed so that OBJs without UVs can work

View file

@ -48,6 +48,7 @@ float unpackuvert( uint32_t n, int c )
bool FUE1Model::Load( const char *filename, int lumpnum, const char *buffer, int length )
{
int lumpnum2;
hasSurfaces = true;
FString realfilename = fileSystem.GetFileFullName(lumpnum);
if ( (size_t)realfilename.IndexOf("_d.3d") == realfilename.Len()-5 )
{

View file

@ -4,7 +4,10 @@
#include <stdint.h>
// [RH] Voxels from Build
#define MAXVOXMIPS 5
enum
{
MAXVOXMIPS = 5,
};
struct kvxslab_t
{