Comments (12)
嗯,该了目录结构,这到是个问题了:(
from slua.
我刚才看到5.2.3发布了,貌似修复UNetWeaver的bug
from slua.
你可以考虑revert之前的目录结构,就不存在这个问题了
from slua.
我把generate code path改回到了之前的目录。
其他的还是遵循现在新的目录结构吧。
5.2.3 的release note里好像没看到关于UNetWeaver那个问题的说明?
只看到了(none) - Networking: Fix for UNetWeaver exception when making Metro builds
这个,针对metro的
from slua.
Networking: Fixed code generation execption when using certain build-in unity types ...
这个估计是个fix,猜的
from slua.
还有一个问题:
Plugins/SLua_Managed/Editor 这个目录下的文件似乎会被编译到Assembly-CSharp-firstpass
中 而不是Assembly-CSharp-Editor-firstpass
,
build的时候会报错,引用了UnityEditor
Plugins/Editor 应该只能识别这个一级目录?
from slua.
@wlgys8 I think this document is good reference
http://docs.unity3d.com/Manual/ScriptCompileOrderFolders.html
Phase 1 is compiled to Assembly-CSharp-firstpass.dll
Phase 2 is compiled to Assembly-CSharp-Editor-firstpass.dll ( depends Assembly-CSharp-firstpass.dll )
Phase 3 is compiled to Assembly-CSharp.dll ( depends Assembly-CSharp-firstpass.dll )
Phase 4 is compiled to Assembly-CSharp-Editor.dll ( depends above all )
this files is possibly checked in specific folder {UNITY_PROJECT}/Library/ScriptAssemblies/
from slua.
@Salada
I'v read this document. The issue is:
If we define some extension methods for UnityEngine.Sprite
in SpriteExt.cs
,
1.SpriteExt.cs
will be compiled into Assembly-CSharp.dll
2.Lua_UnityEngine_Sprite.cs
will be compiled into Assembly-CSharp-firstpass.dll
We can not access SpriteExt.cs in Lua_UnityEngine_Sprite.cs.
This will cause a compile error.
from slua.
If want to use method extensions by class in UnityEngine.dll, I think need to 2 bind load phase and codegen phase. but changelist expect too many. and i have just idea. not attempt to implement this feature yet.
I turn off feature about extensions method in SLuaSetting.asset, couldn't catch this problem :(
I think Editor folder need to be located in /Editor not in /Plugins/Editor, Assembly-CSharp-Editor-firstpass.dll cannot access Assembly-CSharp.dll. then your needs is accomplished.
from slua.
@Salada
I agree with you
from slua.
If put folder Editor
under Plugins
LuaCodeGen.InvokeEditorMethod will throw error below:
System.IO.FileNotFoundException: Could not load file or assembly 'Assembly-CSharp-Editor' or one of its dependencies. The system cannot find the file specified.
File name: 'Assembly-CSharp-Editor'
Should move folder editor
back to Assets/Slua/Editor ?
from slua.
ok
from slua.
Related Issues (20)
- 加群
- 加群专用 HOT 3
- 用slua记载一个蓝图类报错
- Insecure Temporary File
- 加群 HOT 1
- 如何编译64位Lua5.3版本的slua HOT 3
- 1.6 升1.7后 android取UnityEngine.Time.deltaTime 取不到 是nil指
- slua clang 编译后 crash HOT 3
- 加群
- 加群
- 加群 HOT 1
- SLua的GetAlreadyDestroyedObjectNames
- 加群
- 加群
- .Net 6(Unity2021) EnableKeyword 的重载方法中增加了 in 关键字
- Unity2021.2, Unity2022.2 Lua桥生成错误
- 加群
- DllNotFoundException: Unable to load DLL 'slua'. Tried the load the following dynamic libraries HOT 1
- 加群
- 加群
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slua.