本帖最后由 Ph-苯 于 2022-6-21 18:38 编辑
该方法的JavaDoc复制代码写着`public static void setShaderColor(float red, float green, float blue, float alpha)`,所以应该是RGBA。
`com.mojang.blaze3d.systems.RenderSystem#setShaderColor(float, float, float, float)`的四个参数分别是什么意思?
该方法的JavaDoc
- https://maven.fabricmc.net/docs/yarn-1.19+build.4/com/mojang/blaze3d/systems/RenderSystem.html#setShaderColor%28float%2Cfloat%2Cfloat%2Cfloat%29
`com.mojang.blaze3d.systems.RenderSystem#setShaderColor(float, float, float, float)`的四个参数分别是什么意思?
本帖最后由 无敌三脚猫 于 2022-6-21 15:17 编辑
颜色,四种参数,🤔盲猜是r,g,b,alpha
看了下,这里的四个参数会被传递给GL某某.glBlendColor,再去看看glBlendColor,石锤了
https://legacy.lwjgl.org/javadoc/org/lwjgl/opengl/GL14.html
啊不对,我在说些什么啊,1.16的时候压根没有这个函数,看错了,溜了溜了
看了下,这里的四个参数会被传递给GL某某.glBlendColor,再去看看glBlendColor,石锤了
https://legacy.lwjgl.org/javadoc/org/lwjgl/opengl/GL14.html
public static void glBlendColor(float red,
float green,
float blue,
float alpha)
啊不对,我在说些什么啊,1.16的时候压根没有这个函数,看错了,溜了溜了
应该跟GL.color4f差不多的功能吧。可惜1.16.5以上版本不能用了
无敌三脚猫 发表于 2022-6-21 14:54
颜色,四种参数,🤔盲猜是r,g,b,alpha
看了下,这里的四个参数会被传递给GL某某.glBlendColor,再去 ...

RenderSystem.setShaderColor以前叫做color4f

QingyuOvO 发表于 2022-6-21 15:19
应该跟GL.color4f差不多的功能吧。可惜1.16.5以上版本不能用了
所以四个参数分别是RGBA?
本帖最后由 aiusyudiyab 于 2022-6-21 16:46 编辑
javadoc 有写,一个好点的ide应该也有提示的吧
ps: 这链接怎么写都是非法字符,将就看看吧
复制代码
另,如果说清楚是yarn的话,可能上面几位就不会去找别的地方了,毕竟不是所有人写minecraft mod都用yarn mapping
Ph-苯 发表于 2022-6-21 16:30
所以四个参数分别是RGBA?
javadoc 有写,一个好点的ide应该也有提示的吧
ps: 这链接怎么写都是非法字符,将就看看吧
- https://maven.fabricmc.net/docs/yarn-1.19+build.4/com/mojang/blaze3d/systems/RenderSystem.html#setShaderColor(float,float,float,float)
另,如果说清楚是yarn的话,可能上面几位就不会去找别的地方了,毕竟不是所有人写minecraft mod都用yarn mapping
本帖最后由 Ph-苯 于 2022-6-21 18:36 编辑
我的IDE没有给这个方法的javadoc,给的源码里参数的名字也是f,g,h,i这样的无意义单字母名称。
(为什么我genSources时没有把这些类的源码也给弄好?)
这个方法没有被混淆(吧?至少我查到的是没有),所以我以为yarn和mcp里它们是一样的。
aiusyudiyab 发表于 2022-6-21 16:40
javadoc 有写,一个好点的ide应该也有提示的吧
ps: 这链接怎么写都是非法字符,将就看看吧
我的IDE没有给这个方法的javadoc,给的源码里参数的名字也是f,g,h,i这样的无意义单字母名称。
(为什么我genSources时没有把这些类的源码也给弄好?)
这个方法没有被混淆(吧?至少我查到的是没有),所以我以为yarn和mcp里它们是一样的。
Ph-苯 发表于 2022-6-21 18:23
我的IDE没有给这个方法的javadoc,给的源码里参数的名字也是f,g,h,i这样的无意义单字母名称。
(为什么我g ...
确实没有混淆,不过这rgba几个名字是yarn加的 (可以看yarn的 mappings/com/mojang/blaze3d/systems/RenderSystem.mapping)
aiusyudiyab 发表于 2022-6-21 21:42
确实没有混淆,不过这rgba几个名字是yarn加的 (可以看yarn的 mappings/com/mojang/blaze3d/systems/Rende ...
哦,如果一个方法本来没有被混淆,那么它就不会被反混淆,其变量名也就不会改成那些有意义的名字?
Ph-苯 发表于 2022-6-22 23:31
哦,如果一个方法本来没有被混淆,那么它就不会被反混淆,其变量名也就不会改成那些有意义的名字? ...
好像也不是,就是看mapping完整度吧
aiusyudiyab 发表于 2022-6-23 00:20
好像也不是,就是看mapping完整度吧
奇怪了,看yarn的javadoc,yarn明明是给形参命了有意义的名字的,但是我那个项目里就没有重命名,仍然是无意义单字母变量名。
本帖最后由 aiusyudiyab 于 2022-6-24 16:47 编辑
1.18.2 的 yarn 都还没有,https://github.com/FabricMC/yarn ... enderSystem.mapping
1.19 就有了有意义的名字,应该是在这之间某个快照版本加入的
Ph-苯 发表于 2022-6-23 23:14
奇怪了,看yarn的javadoc,yarn明明是给形参命了有意义的名字的,但是我那个项目里就没有重命名,仍然是 ...
1.18.2 的 yarn 都还没有,https://github.com/FabricMC/yarn ... enderSystem.mapping
1.19 就有了有意义的名字,应该是在这之间某个快照版本加入的
aiusyudiyab 发表于 2022-6-24 09:49
1.18.2 的 yarn 都还没有,https://github.com/FabricMC/yarn ... enderSystem.mapping
1.19 就有了有意义 ...
哦哦,怪不得,我以为之前就加入了。不知道1.18.2的混淆表有没有更新这些,等会儿试试。