求教
gamemaker吧
全部回复
仅看楼主
level 1
ghoooooooa 楼主
shader 里面 uniform float array[] 数组长度怎么随shader_set_uniform_f_array变化而变化
2018年05月03日 06点05分 1
level 9
比如,
shader0 中 fragment shader 声明:
uniform float a[5];
draw事件中:
shader_set(shader0);
tex_array[0] = 1;
tex_array[1] = 0.9;
tex_array[2] = 0.8;
tex_array[3] = 0.6;
tex_array[4] = 0.5;
shader_params = shader_get_uniform(shader0, "a");
shader_set_uniform_f_array(shader_params, tex_array);
draw_self();
shader_reset();
2018年05月04日 15点05分 2
uniform float a[5]; 尴尬的地方就是a[5] 必须指定它的长度 有办法让它a[]的长度随外部调入长度而变化吗
2018年05月07日 15点05分
@ghoooooooa 应该只能像C语言那样声明固定长度数组了,如果精度要求不高且数据量大可以直接传texture,像素值作数据
2018年05月10日 12点05分
@微子喵 试着用sprite_create_from_surface()创建1像素rbga的值来记录一组参数 图片宽度就是总长度 用texture_set_stage() 导入shader里去 求教怎样精准定位每格位置
2018年05月11日 11点05分
1