Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor hlsl #26

Merged
merged 8 commits into from
Jul 23, 2023
Merged

Refactor hlsl #26

merged 8 commits into from
Jul 23, 2023

Conversation

alandtse
Copy link
Collaborator

Tested in VR and 1.5.97. @doodlum, please do a sanity check before merging it in though. There should be no functional change as it's code simplification.

Please see the new NG_mul which should replace mul when multiplying against a 4x4 matrix from FrameBuffer.hlsl. It probably can be used on PerGeometry too. Check out the reduction in RunGrass.hlsl.

@alandtse alandtse marked this pull request as draft July 17, 2023 07:02
@alandtse
Copy link
Collaborator Author

alandtse commented Jul 17, 2023

Hold on, started seeing errors when working on lighting:

Failed to compile Vertex shader Lighting::513: Common/FrameBuffer.hlsl(1,10-25): error X1506: too many nested #includes

EDIT: False alarm on my side. Pasted a bad file into my VR.hlsl. Looks fine.

@alandtse alandtse marked this pull request as ready for review July 17, 2023 07:04
Simplify Flat and VR code with helper functions. NG_mul has been added
to replace mul when accessing FrameBuffer content. Additionally code
from ShadowPS.hlsl was moved to Framebuffer.hlsl.
@alandtse
Copy link
Collaborator Author

Not sure why the git checkout is failing; but regardless, it's manually linted on my side.

@alandtse alandtse marked this pull request as draft July 21, 2023 06:01
NG_mul is no longer necessary now that it's clear eyeIndex is just
an array selector. This means that flat will have to define eyeIndex
for full VR compatibility. This simplifies the code significantly
throughout.
The VR code used a different set of disassembly which made it appear the
divisor had to be different. This now uses the correct w component
This is playable but certain terrain edges may have bugs. I suspect
its snow shader related.
@doodlum doodlum marked this pull request as ready for review July 22, 2023 18:08
@doodlum doodlum merged commit a8d9b70 into doodlum:main Jul 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants