Skip to content

Commit b9570ae

Browse files
committed
Show shader register flags in /listshaders
1 parent 8e9a33f commit b9570ae

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/engine/renderer/tr_shader.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6374,6 +6374,7 @@ class ListShadersCmd : public Cmd::StaticCmd
63746374

63756375
// Header names
63766376
std::string num = "num";
6377+
std::string regFlags = "regFlags";
63776378
std::string shaderSort = "shaderSort";
63786379
std::string stageType = "stageType";
63796380
std::string stageNumber = "stageNumber";
@@ -6384,6 +6385,7 @@ class ListShadersCmd : public Cmd::StaticCmd
63846385

63856386
// Header number sizes
63866387
numLen = std::max( numLen, num.length() );
6388+
size_t regFlagsLen = regFlags.length();
63876389
size_t shaderSortLen = shaderSort.length();
63886390
size_t stageTypeLen = stageType.length();
63896391

@@ -6405,6 +6407,7 @@ class ListShadersCmd : public Cmd::StaticCmd
64056407
// Print header
64066408
lineStream << std::left;
64076409
lineStream << std::setw(numLen) << num << separator;
6410+
lineStream << std::setw(regFlagsLen) << regFlags << separator;
64086411
lineStream << std::setw(shaderSortLen) << shaderSort << separator;
64096412
lineStream << std::setw(stageTypeLen) << stageType << separator;
64106413
lineStream << stageNumber << ":" << shaderName;
@@ -6428,6 +6431,14 @@ class ListShadersCmd : public Cmd::StaticCmd
64286431
continue;
64296432
}
64306433

6434+
regFlags = {
6435+
shader->registerFlags & RSF_2D ? '2' : '_',
6436+
shader->registerFlags & RSF_NOMIP ? 'N' : '_',
6437+
shader->registerFlags & RSF_FITSCREEN ? 'F' : '_',
6438+
shader->registerFlags & RSF_SPRITE ? 'S' : '_',
6439+
shader->registerFlags & RSF_3D ? '3' : '_',
6440+
};
6441+
64316442
if ( !shaderSortName.count( (shaderSort_t) shader->sort ) )
64326443
{
64336444
Log::Debug( "Undocumented shader sort %f for shader %s",
@@ -6479,6 +6490,7 @@ class ListShadersCmd : public Cmd::StaticCmd
64796490

64806491
lineStream << std::left;
64816492
lineStream << std::setw(numLen) << i << separator;
6493+
lineStream << std::setw(regFlagsLen) << regFlags << separator;
64826494
lineStream << std::setw(shaderSortLen) << shaderSort << separator;
64836495
lineStream << std::setw(stageTypeLen) << stageType << separator;
64846496
lineStream << j << ":" << shaderName;

0 commit comments

Comments
 (0)