fix: implicit truncation of vector type shader warning #2242
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Details
Explicitly declare the data components used in the modulo operator & the data conversion to take place (ie. float modulo and convert to int2 data type).
Description
See above.
Related Issue
Using material Transparency -> Dithered Shadows (enabled by default) on a model would trigger "implicit truncation of vector type" warning at run-time.
Feature was introduced in #1256
Motivation and Context
streams.ShadingPosition
isfloat4
data type. The original code would do a float modulo operation returning afloat4
and implicit convert to int2. This would trigger a warning due to zw components being dropped.While the explicit
int2(...)
is probably not needed, it's better to spell it out that we're not the same data type.Types of changes
Checklist
Full disclosure: I did not build/run the editor. I tested the original line & modified line on a local project with a custom shader. The original line triggered the warning on the project, and the modified line did not trigger the warning - the app did not crash.