找回密码
 立即注册
查看: 371|回复: 0

Xlua---Lua访问C#扩展方法

[复制链接]
发表于 2021-8-15 09:37 | 显示全部楼层 |阅读模式
背景

自己也是xlua新手,刚开始不知道如何从lua访问c#方法,然后google后,也是很普通需要在扩展类加上
[XLua.LuaCallCSharp],自己的确也是加了,但是在unity运行的时候还是不行,报nil

解决方式

经过一番尝试后,发现如果lua需要访问C#扩展方法,需要先清空代码,然后再重新生成,有更好的方式,欢迎留言交流



代码示例

C#
  1. [XLua.LuaCallCSharp]publicstaticclassEngineExt{staticpublicVector3ScreenToWorldPoint(thisRectTransform trans,Vector2 screenPoint,Camera cam =null){if(cam ==null){var cvs = trans.gameObject.GetUICanvas();if(cvs !=null){
  2.                 cam = cvs.worldCamera;}}Vector3 worldPos;
  3.         RectTransformUtility.ScreenPointToWorldPointInRectangle(trans, screenPoint, cam,out worldPos);return worldPos;}}
复制代码
Lua
  1. local worldPos = this.heroObjTempl.RectTransform:ScreenToWorldPoint(scrnPos,nil)
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-24 11:59 , Processed in 0.090477 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表