Unity3D 使用C#指针unsafe
2015-12-27 13:50
483 查看
Unsafe code requires the `unsafe' command line option to be specified
在Unity开发中,如果涉及到指针的使用,需要自己定义预处理器指令。控制在编译时可以使用哪些功能代码,比如UNSAFE。为此,必须添加带有其他指令的文本文件至“资源 (Assets/)” 文件夹下。文件的名称取决于使用的语言,扩展名为.rsp:
对应关系如下:
C# <Project Path>/Assets/smcs.rsp
C# - Editor Scripts <Project Path>/Assets/gmcs.rsp
UnityScript <Project Path>/Assets/us.rsp
Boo <Project Path>/Assets/boo.rsp
例如,如果在smcs.rsp文件中包含独立行 "-define:UNITY_DEBUG",定义的 UNITY_DEBUG 将作为 C# 脚本的全局定义,编辑器脚本除外。
每次更改 .rsp 文件,都需要重新编译才能保证有效。只需更新或重新导入单个脚本 (.js, .cs or .boo) 文件即可。
如果只需要修改全局定义,应使用播放器设置 (Player Settings) 中的脚本定义符号 (Scripting Define Symbols),因为这将覆盖所有编译器。若选择 .rsp 文件,就必须为 Unity 使用的每个编译器提供一个文件,并且将无法了解何时使用一个或另一个编译器。
.rsp 文件的使用在 smcs 应用程序(包含在编辑器安装文件夹中)的帮助部分有详细说明。可以运行 "smcs -help" 了解更多信息。同时,请务必记住,.rsp 文件必须与调用的编译器匹配。例如,如果针对网络播放器,smcs 将与 smcs.rsp 同时使用;如果针对独立播放器,gmcs 将与 gmcs.rsp 同时使用;如果针对 MS 编译器,csc 将与 csc.rsp 同时使用
在Unity开发中,如果涉及到指针的使用,需要自己定义预处理器指令。控制在编译时可以使用哪些功能代码,比如UNSAFE。为此,必须添加带有其他指令的文本文件至“资源 (Assets/)” 文件夹下。文件的名称取决于使用的语言,扩展名为.rsp:
对应关系如下:
C# <Project Path>/Assets/smcs.rsp
C# - Editor Scripts <Project Path>/Assets/gmcs.rsp
UnityScript <Project Path>/Assets/us.rsp
Boo <Project Path>/Assets/boo.rsp
例如,如果在smcs.rsp文件中包含独立行 "-define:UNITY_DEBUG",定义的 UNITY_DEBUG 将作为 C# 脚本的全局定义,编辑器脚本除外。
每次更改 .rsp 文件,都需要重新编译才能保证有效。只需更新或重新导入单个脚本 (.js, .cs or .boo) 文件即可。
如果只需要修改全局定义,应使用播放器设置 (Player Settings) 中的脚本定义符号 (Scripting Define Symbols),因为这将覆盖所有编译器。若选择 .rsp 文件,就必须为 Unity 使用的每个编译器提供一个文件,并且将无法了解何时使用一个或另一个编译器。
.rsp 文件的使用在 smcs 应用程序(包含在编辑器安装文件夹中)的帮助部分有详细说明。可以运行 "smcs -help" 了解更多信息。同时,请务必记住,.rsp 文件必须与调用的编译器匹配。例如,如果针对网络播放器,smcs 将与 smcs.rsp 同时使用;如果针对独立播放器,gmcs 将与 gmcs.rsp 同时使用;如果针对 MS 编译器,csc 将与 csc.rsp 同时使用
相关文章推荐
- NullReferenceException UnityEngine.Transform.get_localPosition
- Unity3D 调用模态对话框/Unity3D MessageBox
- Unity3D-微信-飞机大战-项目经过
- 【Unity Shaders】使用CgInclude让你的Shader模块化——Unity内置的CgInclude文件
- 关于Unity3D的编辑器崩溃时的线索定位
- UNITY 位移
- unity shader的固定管线(fixed function shader)
- [置顶] unity3d基于ugui的ui模块
- {Unity} Shader初步
- {Unity} 2D游戏,Canvas转世界坐标
- {Unity} Renderer SortingOrder的取值范围
- Unity -网格合并
- unity3d 如何判断一点是不是在一个相机的视锥内
- Unity3d ulua 环境搭建与所遇到的问题
- unity自带寻路Navmesh入门教程(一)
- KING_UNITY学习之鼠标点击地面控制人物移动
- 实例教程Unity3D单例模式(一)通经常使使用方法
- unity build设置固定分辨率不生效的问题
- Unity3d截图方法合集
- Unity3d 异常与解决方案集合(持续)