Commit graph

6819 commits

Author SHA1 Message Date
marauder2k7 017246cfa3 Update gfxD3D11Shader.cpp 2024-03-01 14:30:31 +00:00
marauder2k7 74da01dd0d Merge remote-tracking branch 'upstream/development' into ShaderConstBuffer-CleanupRefactor 2024-02-29 14:34:54 +00:00
marauder2k7 a7021c0ed3 cleanup
Reverted back to a 2d array since when the const buffer changes are made to the shaders they will be completely swapped out for a 1d array with a max size of 16 for the program, id3d11buffers will be shared across shaders apart from object buffers. We still need to decide on a structure to get everything setup so to keep functionality a max of 2 buffers per stage with 1 buffer as a padding so we can start coding constant buffers right away
2024-02-29 14:34:22 +00:00
Brian Roberts 5d1f306668
Merge pull request #1224 from Azaezel/alpha41/cmakeCleanup
t3d subdirectory review
2024-02-28 19:39:20 -06:00
AzaezelX 7d1927af99 t3d subdirectory review
add missing example directory
preserve reservations for ecs directories in remmed form
2024-02-28 03:53:49 -06:00
Brian Roberts 13e5302e93
Merge pull request #1211 from marauder2k9-torque/AssimpLoaader-Fix
Test assimp PR before full refactor
2024-02-28 03:37:25 -06:00
marauder2k7 cd8914b9ad reverse bitshift
need to reverse the bitshift on shaderstages so we get values between 0-5, need to also revert the mBoundConstVec back to a 2dimensional array so that the binding point can be dynamic as well.
2024-02-27 20:59:10 +00:00
marauder2k7 040bbdd6d6 Update gfxD3D11Shader.cpp
turns out we dont need to do this if both exist the bind point gets changed anyway
2024-02-27 14:51:59 +00:00
marauder2k7 e9a38539a3 multiple desc per handle
Added multiple descriptions to handles.

While maps are very efficient and match data very quickly due to hashing and what not, they are tricky memory wise, we cant clear them if they are only made up of structs and enums. Need to explore other methods for doing this. Original system had a sub buffer system with a check based on whether the handle was marked vertex/pixel. With 6 stages possible now we need to think of a more effective method. Since shaderstage is now a bit flag maybe some sort of streaming setup could be used to write without a loop.
2024-02-27 09:15:19 +00:00
marauder2k7 78df01af55 Update gfxD3D11Shader.cpp
plugging leaks
2024-02-26 22:44:32 +00:00
marauder2k7 37636bcd26 switch to vectors
uses vectors for buffers instead of 2d array
2024-02-26 22:25:11 +00:00
marauder2k7 dfe4bcd01e Merge remote-tracking branch 'upstream/development' into ShaderConstBuffer-CleanupRefactor 2024-02-26 18:51:40 +00:00
marauder2k7 c876e86957 Update gfxD3D11Shader.cpp
cleanups
2024-02-26 16:38:56 +00:00
marauder2k7 b979f4befc everything works
... apart from the sun =/
2024-02-26 09:22:19 +00:00
marauder2k7 e24971517e commit before pr 2024-02-25 23:10:23 +00:00
marauder2k7 25bc9cf354 stumped
buffers seem to be being added correctly, but for whatever reason render is not correct =/
2024-02-25 22:51:37 +00:00
marauder2k7 af29a2af0a Remove code duplication
Removed code duplication, all types can be routed through the same function apart from matrices.
2024-02-25 15:26:48 +00:00
marauder2k7 8c01a1a85b Working
This commit has everything rendering kind of correctly, but the colours seem off from lighting.
2024-02-25 13:39:22 +00:00
marauder2k7 6355e122d2 compare before change
check to see if data is different in internal sets before changing values
2024-02-24 19:52:35 +00:00
Brian Roberts e0cf6cd1b7
Merge pull request #1219 from Azaezel/alpha41/npcnono
fix non player class pathshape jitter
2024-02-24 12:31:15 -06:00
Brian Roberts ecd75bdc06
Merge pull request #1220 from Azaezel/alpha41/fixGLVisibility
fizzle fix for gl
2024-02-24 12:31:06 -06:00
marauder2k7 3f3ef12c3b handle the global buffer
global buffer needs a special case
2024-02-24 17:33:28 +00:00
marauder2k7 e8d8138c74 working
last commit before global conform
2024-02-24 16:26:09 +00:00
marauder2k7 d9fd3375da Merge remote-tracking branch 'upstream/development' into ShaderConstBuffer-CleanupRefactor 2024-02-24 14:42:53 +00:00
marauder2k7 8887e21f4b working
working example, renders all gui controls.

We still cant render a scene, something to do with the constant buffer at slot 0 of the vertex shader being too small..... gotta figure this one out..................
2024-02-24 14:42:30 +00:00
marauder2k7 dd4d48d654 working example
now its working.. still not perfect but its getting there
2024-02-24 12:40:12 +00:00
marauder2k7 42b8748f5b bkup
still memory heap issue
2024-02-24 12:04:53 +00:00
Areloch 6b4472b762
Merge pull request #1221 from Azaezel/iesbugfixes
Iesbugfixes
2024-02-23 15:34:38 -06:00
marauder2k7 4caa54ad7e working example
everything is working apart from samplers......
2024-02-23 21:27:44 +00:00
marauder2k7 a1e2f781a8 Set constant buffers
added logic to set constant buffers dx side
2024-02-23 20:06:46 +00:00
AzaezelX 3ab716063f doc correction 2024-02-23 12:39:26 -06:00
AzaezelX c7cc86b357 clamp spot angle to 179,
up custommaterial inputs to 16
add Material::PhotometricMask:handling to processedcustommaterial
and for paranoias sake go ahead and be explicit about _getLightMaterial (those *should* be unneeded as they optionally default to that, but it's how they were in the beatup fork during testing)
2024-02-23 11:52:43 -06:00
AzaezelX 4d1395dd57 from mar: fix the opengl cookie uv lookup 2024-02-23 11:23:07 -06:00
marauder2k7 97ed522667 gfxD3D handles and buffermap
init handles coded.
bufferMap added.
2024-02-23 17:18:45 +00:00
AzaezelX c27b9bf48f allow spotlights specifically to comprress ies based on angle differentials 2024-02-23 01:28:15 -06:00
AzaezelX bbe9bc8871 missed a 1d convert 2024-02-22 23:47:57 -06:00
AzaezelX 14b6822e49 a) use a 1d texture for this
b) if we're going to optionally assign iesProfiles via shadowMacros.push_back, should specify the entries for the samplers too
2024-02-22 17:53:53 -06:00
AzaezelX 0b7fd2f0b3 ies bugfixes 2024-02-22 16:00:26 -06:00
marauder2k7 630bee97c7 backup 2024-02-22 21:37:44 +00:00
marauder2k7 1ccf4cff85 Merge remote-tracking branch 'upstream/development' into AssimpLoaader-Fix 2024-02-22 10:01:32 +00:00
marauder2k7 55519aac57 Shader refactor
Refactored DX Shader compilation and reflection to be more similar to opengl
Added support for more than 1 const buffer per shader stage.

This is boilerplate code, no functionality yet, that will be added in further commits. Though this builds without errors do not try and run it at this point.
2024-02-22 09:58:45 +00:00
AzaezelX ad6880ec0d fizzle fix for gl
correct  ShaderFeatureGLSL::getInVpos to more closely match directx outcomes so we can keep using the same math across incudes
2024-02-21 14:16:38 -06:00
AzaezelX a4da6727ed fix non player class pathshape jitter
everything has a consistent getRenderTransform() nowadays
2024-02-21 12:24:38 -06:00
Brian Roberts 1cb5ed6884
Merge pull request #1218 from marauder2k9-torque/IES-Profiles
Loads an IES Photometric profile.
2024-02-21 12:14:45 -06:00
marauder2k7 2335a05fbe
Update LICENSE.md 2024-02-21 16:32:29 +00:00
marauder2k7 5588213996
Update LICENSE.md 2024-02-21 16:28:40 +00:00
marauder2k7 7fb14e17b5 Create jelly-fish.ies 2024-02-21 10:16:07 +00:00
marauder2k7 973d2792ed Delete A23D-Pathway-&-Accent-Light.ies 2024-02-21 10:15:44 +00:00
marauder2k7 3b4a15d7aa Some test ies profiles
IES profiles to my knowledge are not only free to download, but also free to distribute. you can get packs with thousands of these, i am uploading 3 test ones for now.
2024-02-21 10:14:29 +00:00
marauder2k7 ad64b4f2df IES Loader
Updated IES loader to use torque math functions and calls in the problem areas for mac and linux.

New F32_MIN_EX which is lower than F32_MIN (required for ies profiles)
2024-02-21 09:36:37 +00:00