切梦刀 发布的文章

解决在VMware中Unity3D鼠标键盘响应异常问题

在VMware中装了Unity,写了个Demo,用到了First Person Controller。正常效果应该是第一人称视角,方向键控制行走,鼠标控制视角。

但运行后可以行走,视角无法移动。在我另一电脑(物理机)上没问题。

找到控制视角的脚本MouseLook.cs,里面

else if (axes == RotationAxes.MouseX)
{
    print(Input.GetAxis("Mouse X"));
    transform.Rotate(0, Input.GetAxis("Mouse X") * sensitivityX, 0);
}

打印结果:0

鼠标位移获取始终为0,怀疑是因为虚拟机里对鼠标的搜索和物理机不同。
找到VMware设置鼠标捕获方式,如下图:

- 阅读剩余部分 -

Flex mxmlc命令行编译错误: Java heap space解决方法

用Flex mxmlc命令行编译ActionScript工程时,报如下异常:

错误: Java heap space

原因是JVM heap内存空间不足,得改一下JVM参数

mxmlc命令行编译时JVM参数设置在 sdk/bin/jvm.config中,找到下面这行:

# Arguments to VM
java.args=-Xmx384m -Dsun.io.useCanonCaches=false

-Xmx384m表示JVM在编译时可用的最大内存数,把值改大一点,我这里改成-Xmx512m问题解决

Flash Loader加载完成不发送COMPLETE和ERROR事件的问题分析

Flash进行资源加载时常会“停住”,表现为加载进度卡在某个地方。跟踪发现Loader的progress为100%,但未发送Event.COMPLETE或IOErrorEvent.IO_ERROR等事件。

目前项目加载底层的队列依赖于Loader(URLLoader)的COMPLETE和ERROR事件,如果这两个事件不发送将导整套加载机制崩溃 - -,后续跟踪发现的确会如此。

问题展示

- 阅读剩余部分 -

Air取得app.xml配置的数据

在Air运行过程中得到当前程序的版本,可以如下做:

var xml:XML = NativeApplication.nativeApplication.applicationDescriptor;
var ns:Namespace = xml.namespace();
var appVersion:String = xml.ns::versionNumber;

如上代码段:
xml就是Air工程的xx-app.xml配置内容;
appVersion就是Air工程的版本号;