Search Issue Tracker

By Design

Votes

0

Found in

2017.3.0b5

Issue ID

959928

Regression

No

[Compute] ComputeShader.SetFloats only works for first data in float array

Shaders

-

Only the first data (i.e. floatarray[0]) of float array is correct in compute shader, which values are set using ComputeShader.SetFloats in C# script.

Step:
1. Open repro scene
2. Hit play.

Expected result: the sphere is yellow
Actual result: the sphere is red

Reproducible in : 2017.3.0b5, 2017.2.0f3 ,2017.1.2p1, 5.6.3p3

Comments (2)

  1. ModLunar

    Jun 13, 2018 00:08

    Uh.. why was this made by design on purpose? Doesn't this waste space? Or should we be making our code more optimized for the way GPU needs padding on stuff? (Or something like that?)

  2. Destolos

    Mar 07, 2018 11:06

    I have the same problem. It seems to be that only every fourth value is used.
    For example:

    I want to set "1, 2, 3, 4, 5, 6, 7, 8, 9"
    But I have to do: "1, x, x, x, 2, x, x, x, 3,

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.