编译

增量重新编译Debug版本UnrealScript脚本     UDK.exe make -debug

增量重新编译Release版本UnrealScript脚本    UDK.exe make -release

全量重新编译Debug版本UnrealScript脚本     UDK.exe make -debug -full

全量重新编译Release版本UnrealScript脚本    UDK.exe make -release -full

增量重新编译Debug版本UnrealScript脚本(在.u文件中移除掉源代码信息)     UDK.exe make -debug -stripsource

增量重新编译Debug版本UnrealScript脚本,native脚本需更新c++头文件时,不弹框确认,直接生成     UDK.exe make -debug -auto

Error, Unable to create object of type 'ClassXXX': native class layout differs from script layout.  Please build C++ before continuing to avoid data corruption.

后台(不显示窗口)增量重新编译Debug版本UnrealScript脚本(不显示窗口),native脚本需更新c++头文件时,不弹框确认,直接生成     UDK.exe make -debug -silent -auto

注1:编译完成后,可通过Ctrl+C关闭编译窗口

注2:如果新建一个名为MyGame的包(类型:生成文件项目  这种项目的c++代码需要专门的工具进行编译,如:UnrealBuildTool.exe),

另外,为了UDK能编译该包的uc代码,需要在DefaultEngine.ini中进行配置

[UnrealEd.EditorEngine]
+EditPackages=UTGame
+EditPackages=UTGameContent
+EditPackages=MyGame

MyGame工程目录下,需要新建3个目录Classes、Inc、Src,分别用来放置uc脚本、.h头文件、cpp文件。

注:uc脚本放在Classes目录中就会被编译,添加到工程中只是方便在vs中编辑和查找代码内容

运行

启动编辑器     UDK.exe editor

TGameRelease.exe editor -MinStartup -NoLoadStartupPackages -NoGADWarning  // 自定义的非全量加载方式

Clinet启动一张地图   UDK.exe VCTF-Sandstorm.udk 或 UDK.exe VCTF-Sandstorm

Server启动一张地图  UDK.exe server VCTF-Sandstorm.udk 或 UDK.exe server VCTF-Sandstorm

调试   (vs要安装nFringe调试插件,nFringe需为正式版本或Trial版本)

注1:C++与uc脚本的调试是互斥的;调试C++时就不能调试uc,调试uc时就不能调试C++;无论是调试C++还是uc脚本,都需要先编译成Debug版本

仅仅拥有UDK是无法写C++的Native代码的(原因是:UDK中没有提供C++相关的.h和库文件)

注2:如果Trial版本的nFringe到期了,可以删除Microsoft_Corporation中所有东西,然后重新安装nFringe的Trial版本

注3:在{}及变量定义所在行打断点是不会被命中的

注4:在某些初始化期间的脚本函数(如:InitGame、PreBeginPlay、PostBeginPlay、Login等)无法触发断点,可通过restartlevel命令来重启关卡来触发

1.1.34.193之后版本的nFringe + 2010-10及之后版本的UDK解决了该问题

注5:最新版本的nFringe支持调试时悬浮查看变量数值

注6:引擎通过UDebugger* GDebugger(定义在Core.cpp中)与vs的nFringe插件进行通讯来调试uc代码,UDebugger相关逻辑在Development\Src\Engine\Debugger目录中

注7:项目在使用nFringe调试之前,nFringe会将自己安装目录下的UcDebuggerPipes.dll拷贝到项目工程的Binaries\Win32目录中

将UcDebuggerInterface.dll拷贝到Binaries\Win32\WTDebugger目录中并重命名为UCDebuggerSocket.dll

win7:C:\Users\【用户名】\AppData\Local\Microsoft_Corporation目录,删除里面所有东西
例:C:\Users\Administrator\AppData\Local\Microsoft_Corporation
xp:C:\Documents and Settings\【用户名】\Local Settings\Application Data\Microsoft_Corporation目录,删除里面所有东西
例:C:\Documents and Settings\Administrator\Local Settings\Application Data\Microsoft_Corporation

调试器启动一张地图   vs中填入命令参数:VCTF-Sandstorm.udk 或 VCTF-Sandstorm

然后执行  “调试” -- “Start UnrealScript Debugging ”

Attach调试一张地图  运行UDK.exe VCTF-Sandstorm.udk -vadebug  或 UDK.exe VCTF-Sandstorm -vadebug

然后用vs2008 Attach上进程进行调试

改善C++调试:在vs进行C++调试时更好地查看Unreal自定义类型变量(如:FName,FString,TArray等)

(1) vs2008安装目录下找到autoexp.dat文件(Microsoft Visual Studio 9.0\Common7\Packages\Debugger\autoexp.dat)
AUTOEXP.DAT_addons.zip(Development\External\Visual Studio Debugging)中所有内容追加到autoexp.dat的末尾,并重启vs2008

(2) 在vs2008:Tools - Options - Debugging  -  取消勾选“Show raw structure of objects in variables windows”

uc调试:

(1) 当将Halt on accessed 'none'设置为True:调试uc脚本时,当空对象访问成员函数或成员变量时,调试器暂停挂起

其他调试工具

1. 使用UDebugger.exe(UE3以前版本使用)调试uc脚本

https://wiki.beyondunreal.com/Legacy:UDebugger

https://api.unrealengine.com/udk/Two/UnrealScriptDebugger.html

2. 使用UDE(UnrealScript Development Environment,UE3使用)调试uc脚本  -- 工具在Development\Tools\UDE目录中

https://api.unrealengine.com/udk/Three/DebuggerInterfaceCH.html

https://api.unrealengine.com/udk/Three/DebuggerInterface.html

3. 使用Unreal Script IDE(试用了一下,速度非常慢)调试uc脚本

https://github.com/Zinggi/UnrealScriptIDE/

注1:使用UDebugger.exe、UDE.exe和Unreal Script IDE调试器时,可使用udk.exe -autodebug启动游戏并自动与其建立调试会话并中断到调试器

注2:进入游戏后执行ToggleDebugger控制台命令来建立调试会话并中断到调试器

4. unreal-debugger调试基础库(UDebugger.exe、UDE.exe和Unreal Script IDE依赖该库,关系图如下:)

https://code.google.com/archive/p/unreal-debugger/

4. 使用Real Script IDE调试uc脚本(未使用过)

https://archive.codeplex.com/?p=uside#

查看脚本文件工具

UnCodeX:方便地浏览UnrealScript各个类之间的层次关系

https://api.unrealengine.com/udk/Three/UnCodeX.html

https://api.unrealengine.com/udk/Three/UnCodeXCH.html

https://wiki.beyondunreal.com/Legacy:UnCodeX

https://sourceforge.net/projects/uncodex/

https://github.com/elmuerte/uncodex

编译配置宏

1. C++

(1)Debug配置

#define _DEBUG 1

(2)Release配置

#define NDEBUG 1

(3)Shipping配置

#define NDEBUG 1
#define SHIPPING_PC_GAME 1

2. 脚本

(1)Debug配置  // 会自动定义bebug宏

`if(`isdefined(debug))

`endif

(2)Release配置

`if(`notdefined(debug))

`endif

开发环境

1. IDE:   vs2008 + SP1VS90SP1-KB957912-x86VS90SP1-KB976656-x86

2. 安装了nFringe插件后,可以开启uc,uci文件的行号显示

2. Visual Assist X(需1862版本及以上)   udn中文   udn英文

(a) 让uc脚本Find Symbols(查找符号)、Find References(查找引用)、highlight(高亮)、IntelliSense(智能感知)   -- 需执行以下命令来手动开启

reg add "HKCU\Software\Whole Tomato\Visual Assist X\VANet9" /v EnableUC /t REG_BINARY /d 01 /f 

(b) 自定义uc脚本的Snippets(自动完成)

① 进入C:\Users\<xxx>\AppData\Roaming\VisualAssist\Autotext目录,拷贝一份cpp.tpl并重命名为uc.tpl

② vs2008中"VAssistX" -- "Tools" -- "Edit VA Snippets...",然后将下面c++的自动完成按照uc语法编辑保存

3. DXSDK:  DXSDK_Jun10   DirectX End-User Runtimes (June 2010)

若DX安装失败,请查看C:\Windows\Logs目录下的DXError.log和DirectX.log以确定问题

常见错误:S1023     -- 先卸载以下2个软件,再重新安装

    Microsoft Visual C++ 2010 x86 Redistributable
    Microsoft Visual C++ 2010 x64 Redistributable

    如果启动UDK,还有DX相关的错误,可以使用DirectX Repaire进行修复。

4. UDK:       2010-08-BETA

5. 其他版本的UDK

虚幻开发工具包发布版本的版本信息   udn中文   udn英文

http://download.udk.com/UDKInstall-2009-11-BETA.exe  版本5860  更改列表309428
http://download.udk.com/UDKInstall-2009-11-BETA-2.exe  版本5860  更改列表309428
http://download.udk.com/UDKInstall-2009-12-BETA.exe  版本6094  更改列表422614
http://download.udk.com/UDKInstall-2010-01-BETA.exe  版本6165  更改列表436666
http://download.udk.com/UDKInstall-2010-02-BETA.exe  版本6262  更改列表450718
http://download.udk.com/UDKInstall-2010-03-BETA.exe  版本6383  更改列表474472

http://download.udk.com/UDKInstall-2010-04-BETA.exe  版本6522更改列表503622

http://download.udk.com/UDKInstall-2010-05-BETA.exe  版本6699更改列表536634
http://download.udk.com/UDKInstall-2010-06-BETA.exe  版本6829更改列表558646
http://download.udk.com/UDKInstall-2010-07-BETA.exe  版本6890更改列表571338
http://download.udk.com/UDKInstall-2010-08-BETA.exe  版本7026更改列表597149
http://download.udk.com/UDKInstall-2010-09-BETA.exe  版本7258更改列表641002
http://download.udk.com/UDKInstall-2010-10-BETA.exe  版本7422更改列表674807
http://download.udk.com/UDKInstall-2010-11-BETA.exe  版本7546更改列表703463
http://download.udk.com/UDKInstall-2010-12-BETA.exe  版本7637更改列表720882
http://download.udk.com/UDKInstall-2011-01-BETA.exe  版本7748更改列表742347
http://download.udk.com/UDKInstall-2011-02-BETA.exe  版本7876更改列表776445
http://download.udk.com/UDKInstall-2011-03-BETA.exe  版本7977更改列表798121
http://download.udk.com/UDKInstall-2011-03-BETA2.exe  版本7977更改列表798121
http://download.udk.com/UDKInstall-2011-04-BETA.exe  版本8171更改列表833356
http://download.udk.com/UDKInstall-2011-05-BETA.exe  版本8364更改列表871961
http://download.udk.com/UDKInstall-2011-06-BETA.exe  版本8623更改列表935754
http://download.udk.com/UDKInstall-2011-07-BETA.exe  版本8710更改列表955963
http://download.udk.com/UDKInstall-2011-08-BETA.exe  版本8788更改列表976115
http://download.udk.com/UDKInstall-2011-09-BETA.exe  版本8916更改列表1009027
http://download.udk.com/UDKInstall-2011-10-BETA.exe  版本9029更改列表1047102
http://download.udk.com/UDKInstall-2011-11-BETA.exe  版本9140更改列表1081640
http://download.udk.com/UDKInstall-2011-12-BETA.exe  版本9249更改列表1109819
http://download.udk.com/UDKInstall-2012-01-BETA.exe  版本9375更改列表1140738
http://download.udk.com/UDKInstall-2012-02-BETA.exe  版本9505更改列表1174198
http://download.udk.com/UDKInstall-2012-03-BETA.exe  版本9656更改列表1202061
http://download.udk.com/UDKInstall-2012-05-BETA.exe  版本9953更改列表1260027
http://download.udk.com/UDKInstall-2012-07-BETA2.exe  版本10246更改列表1340247
http://download.udk.com/UDKInstall-2012-11-BETA.exe  版本10499更改列表1426632
http://download.udk.com/UDKInstall-2012-11-BETA2.exe  版本10499更改列表1426632
http://download.udk.com/UDKInstall-2013-02-BETA.exe  版本10897更改列表1532151
http://download.udk.com/UDKInstall-2013-02-BETA2.exe  版本10900更改列表1537896
http://download.udk.com/UDKInstall-2013-05.exe  版本10905更改列表1667866
http://download.udk.com/UDKInstall-2013-07.exe  版本10907 changeList 1715227
http://download.udk.com/UDKInstall-2014-02.exe  版本12097更改列表1999891
http://download.udk.com/UDKInstall-2014-05.exe  版本12264更改列表2062495
http://download.udk.com/UDKInstall-2014-08.exe  版本12466更改列表2243543
http://download.udk.com/UDKInstall-2015-02.exe  版本12791 changeList 2424394

其他

https://api.unrealengine.com/udk/Three/DevelopmentKitFirstScriptProject.html

https://api.unrealengine.com/udk/Three/DevelopmentKitFirstScriptProjectCH.html

UDK游戏开发基础命令的更多相关文章

  1. UE4游戏开发基础命令

    在个人的Unrealengine账户中关联自己的GitHub账户成功之后,就可以访问UE4引擎的源码了. git clone -b release https://github.com/EpicGam ...

  2. 【读书笔记《Android游戏编程之从零开始》】18.游戏开发基础(碰撞检测)

    1.矩形碰撞 所谓矩形碰撞,就是利用两个矩形之间的位置关系来进行判断,如果矩形的像素在另外一个矩形之中,或者之上都可以认为这两个矩形发生了碰撞. 如果单纯的去考虑哪些情况会判定两个矩形发生碰撞,倒不如 ...

  3. 【读书笔记《Android游戏编程之从零开始》】16.游戏开发基础(动画)

    1. Animation动画   在Android 中,系统提供了动画类 Animation ,其中又分为四种动画效果: ● AlphaAnimation:透明度渐变动画 ● ScaleAnimati ...

  4. 【读书笔记《Android游戏编程之从零开始》】15.游戏开发基础(剪切区域)

    剪切区域也称为可视区域,是由画布进行设置的:它指的是在画布上设置一块区域,当画布一旦设置了可视区域,那么除此区域外,绘制的任何内容都将看不到:可视区域可以是圆形.矩形等等. 画布提供了三种设置可视区域 ...

  5. 【读书笔记《Android游戏编程之从零开始》】14.游戏开发基础(Bitmap 位图的渲染与操作)

    Bitmap 是图形类,Android 系统支持的图片格式有 png.jpg.bmp 等. 对位图操作在游戏中是很重要的知识点,比如游戏中需要两张除了大小之外其他完全相同的图,那么如果会对位图进行缩放 ...

  6. 【读书笔记《Android游戏编程之从零开始》】13.游戏开发基础(Paint 画笔)

    1.Paint画笔 Panit(画笔)是绘图额辅助类,其类中包含文字和位图额样式.颜色等属性信息.Paint 的常用方法如下: setAntiAlias(boolean aa) 作用:设置画笔是否无锯 ...

  7. 【读书笔记《Android游戏编程之从零开始》】12.游戏开发基础(Canvas 画布)

    1.Canvas 画布 画布类 Canvas 封装了图形和图片绘制等内容,此类常用的函数说明如下: drawColor(int color) 作用:绘制颜色覆盖画布,常用于刷屏 参数:颜色值,也可用十 ...

  8. RPG游戏开发基础教程

    RPG游戏开发基础教程 第一步 下载RPG Maker 开发工具包 1.RPG Maker 是什么? RPG Maker 是由Enterbrain公司推出的RPG制作工具. 中文译名为RPG制作大师. ...

  9. 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!

    [COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-1 ...

随机推荐

  1. Oracle 11g导出空表、少表的解决办法

    ORACLE 11G中有个新特性,当表无数据时,不分配segment,以节省空间. 解决方法: 1)insert一行,再rollback就产生segment了 该方法是在在空表中插入数据,再删除,则产 ...

  2. ubuntu搭建shad(-_-)owscoks(影梭)

    准备步骤 apt-get updateapt-get install python-gevent python-pippip install shadowsocks 新建一个json文件内容如下,文件 ...

  3. microsoft docx document operation with Java POI library

    microsoft docx document operation with Java POI library combine multiple docx document into one docu ...

  4. mysql习惯及主从复制参数设置

    mysql 重复数据插入 replace into t(id, update_time) values(1, now()); 或 replace into t(id, update_time) sel ...

  5. 修改Firefox的User-Agent,伪装修改秘籍

    火狐浏览器修改userAgent的办法一: 在火狐浏览器地址栏输入"about:config",按下回车进入设置菜单. 找到"general.useragent.over ...

  6. iOS苹果推送功能实现步骤

    1.在钥匙串里 导出推送证书Apple Push notification Services 的 certificate, 命名为cer.p12,放在电脑桌面 ,期间密码设为123456 2.在钥匙串 ...

  7. 深入C#内存管理来分析值类型&引用类型,装箱&拆箱,堆栈几个概念组合之间的区别

    C#初学者经常被问的几道辨析题,值类型与引用类型,装箱与拆箱,堆栈,这几个概念组合之间区别,看完此篇应该可以解惑. 俗话说,用思想编程的是文艺程序猿,用经验编程的是普通程序猿,用复制粘贴编程的是2B程 ...

  8. VirtualBox Guest Additions 在CentOS中无法安装的解决方法

    安装时出现一步错误查看log为(log文件是 /var/log/vboxadd-install.log): /tmp/vbox.0/Makefile.include.header:94: *** Er ...

  9. js获取url信息

    设置或获取对象指定的文件名或路径. alert(window.location.pathname) 设置或获取整个 URL 为字符串. alert(window.location.href); 设置或 ...

  10. 大熊君学习html5系列之------requestAnimationFrame(实现动画的另一种方案)

    一,开篇分析 Hi,大家好!大熊君又和大家见面了,(*^__^*) 嘻嘻……,这系列文章主要是学习Html5相关的知识点,以学习API知识点为入口,由浅入深的引入实例, 让大家一步一步的体会" ...