以下unity3d的C#代码是啥意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以下unity3d的C#代码是啥意思?相关的知识,希望对你有一定的参考价值。

void StartEditor()

if (!matLoaded)

back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);
lines.renderer.sharedMaterial = new Material(lines.renderer.sharedMaterial);
matLoaded = true;

参考技术A back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);

根据Material的构造函数来说, new Material(back.renderer.sharedMaterial)是复制了自己原来的材质的shader而新建一个材质,这样做的目的恐怕是在后面的操作中需要更改这个back中的材质,而这个材质是共用的改变了其他共用这个材质的物体也会改变,而新建一个可以获得一个样的材质,而且更改了不会改变其他的材质。本回答被提问者采纳
参考技术B 给 back 和 lines绑定一个材质包追问

back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);

这前后相当,为什么还要写出来呢?作用是什么?

一段反编译后的C#代码段,不知道是啥意思,但是出错。

public event SwipCardEventHandler SwipCardEvent

[MethodImpl(MethodImplOptions.Synchronized)]
add

this.SwipCardEvent = (SwipCardEventHandler)Delegate.Combine(this.SwipCardEvent, value);

[MethodImpl(MethodImplOptions.Synchronized)]
remove

this.SwipCardEvent = (SwipCardEventHandler)Delegate.Remove(this.SwipCardEvent, value);



提示错误:
错误 787 事件“YUTU.UIL.Reception.suite.ReceptionDevice.SwipCardEvent”只能出现在 += 或 -= 的左边 C:\Users\****\Desktop\666\YUTU.UIL.Reception.suite\ReceptionDevice.cs 24 10 YUTU

这段话实际上就只是定义了个事件而已。在C#里面只需要写第一行就行了。追问

不需要些事件处理函数?

追答

你用的反编译工具是不是ILSpy?试试这个。

追问

呵呵,就是使用的这个工具,出的代码报的这个错误。能联系Q:755678570吗?我没分了,马上追问不了。

追答

反编译本来就不能保证能运行,一般只是用来看思路,否则就没有版权或者混淆了。我也不能保证解决,因此不用加了。

追问

呵呵,我的意思,是看不懂,以后可能也有别的地方沟通呗。不做其他的。

追答

我只知道C#的事件背后实际上都是生成了类似代码,不过因为刚刚我自己写了段代码再用ILSpy反编译并没重现你贴的效果,所以也不敢说一定是由什么源码产生的。

参考技术A =改为+= 试下

以上是关于以下unity3d的C#代码是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

以下代码中的 1.e0 是啥意思

C、C++ 和 C# 中的 void 是啥意思?

C#中的泛型是啥意思?

我的C#程序运行后出现“LC.exe已退出,代码为-1”是啥意思,如何解决?

运算符“<<”在 C# 中是啥意思?

c# visual studio 重新生成解决方案是啥意思?