请问哪里有UDK地图包百度云下载的后缀名啊,后缀名是...

UDK初识系列之三----脚本进阶
在上一节的镜头里面,你会发现自己是以第一人称拿着***来操作的,这样有些人可能会有些不习惯,视角和你的眼睛重合了,你看不到你自己,也不知道自己长什么样子,但有什么方法能让操作的玩家看到里面的人呢。
因为在Unreal引擎中,提供了自己可编辑的脚本语言,UDK这个平台有点类似C++、Java,它也是面对对象的,下面将介绍如何把第一视角转变成一些2.5D或3D游戏中的视角。即能看到自己的角色,并能操控他移动或攻击。
首先必须先对UDK***目录有个了解:
UDK\UDK-2010-08\UDKGame\Content\这个下面可以新个文件夹,在里面可以保存自己设计的关卡。(我的版本是8月份的,目录是UDKGAME,有些目录是UTGAME,但其他还是一样的,只是名字不同而已。)
UDK\UDK-2010-08\UDKGame\Script\下面就是用来放置脚本类.uc文件Make后的.u脚本文件。
UDK\UDK-2010-08\UDKGame\Config\是用来做一些配置设置的,比如说编译的路径,修改语言,后面会提到。
UDK\UDK-2010-08\Development\Src\在这个目录下放着的是脚本文件,里面有的都是系统自带的,如果自己要建的话,可以在这下面那家个文件夹,里面再建个Classes文件夹,然后在里面放入自己编辑的脚本类文件,最后还需要Unreal
Frontend来Make一下生成一个以u为后缀名的脚本文件放在Script文件夹里。
在这里先用记事本编写三个类文件,后缀名都是.uc格式的,分别是TutorialGameInfo.uc、TutorialPawn.uc、TutorialPlayerController.uc
(代码见附录)。在UDK\UDK-2010-08\Development\Src\下新建目录TutorialGame\Classes,然后把三个类文件放入其中。同时修改Config文件夹内的DefaultEngine.ini,[UnrealEd.EditorEngine]项最后添加+ModEditPackages=TutorialGame,加入Make的文件。如图:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
打开Unreal
Frontend,选择Make,最后显示:
--------------------TutorialGame -
Release--------------------
Analyzing...
Scripts successfully compiled
- saving package 'D:\Program
Files\UDK\UDK-2010-08\Binaries\Win32\..\..\UDKGame\Script\TutorialGame.u'
Success - 0 error(s), 0
warning(s)
Execution of commandlet
took:& 32.16 seconds
[COMMANDLET 'UDK.exe make
-full' SUCCEEDED] 十二月 24, 3:23 下午
中间提示Script\TutorialGame.u中生成成功。为了让游戏运行的时候能够运用到这个脚本.u文件,必须还得修改一下脚本执行路径。打开DefaultGame.ini,在[Engine.GameInfo]一项中最后加入一行
+DefaultMapPrefixes=(Prefix="TG",bUsesCommonPackages=FALSE,GameType="TutorialGame.TutorialGameInfo",如图:
加入这行语句就是告诉UDK在运行以“TG”开头的游戏名时,运用什么设置,执行啊个脚本,在这里我们是以TG开头的游戏文件来执行我们编写的脚本,即能够看得到自己的效果。
我把图命名为TG-My-UDKTest.
udk,在UDK\UDK-2010-08\UDKGame\Content\下面新建文件夹VideoTutorial,然后把TG-My-UDKTest.udk放入其中。运行命令提示符窗口,进入到UDK***下的UDK\UDK-2010-08\Binaries目录,然后输入udk
TG-My-UDKTest如图:
&&&&&&&&&&&&
回车后,可以看到上面三个效果图中已经看不到右下角的***了,看到的是自己的人,随着你的上下左右操作,那个机器人就运动着,只是你看不到他的正面而已。
原先照相机和人的眼睛是重合的,而现在照相机的位置是在人后面的一定距离一定角度上,关键看这个
if(Controller!=none)
&&&&&&&&&&&&&
out_CamLoc=Location-Vector(Controller.Rotation)*192.0f;
&&&&&&&&&&&&&
out_CamLoc=Location-Vector(Rotation)*192.0f;
out_CamRot=Rotator(Location-out_CamLoc);
是这里设定了照相机的位置和角度。但是这里还存在一个小小的不足,就是没有加上碰撞判断,如果照相机和人中间正好有东西的话,例如跑到墙边,照相机就直接去了墙外面,而视线就被外墙挡住了,就看不到内部的人视线了。如外墙无光的话就黑漆漆一片,什么都看不到。如下:
&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&
&&& 这主要是没有给照相机加上碰撞检测,视线有可能被挡住而已,在下一节中,会提到如何给相机加上碰撞检测。
PS:记得网上有这个UDK的视频的,里面有好几节精讲这个脚本和碰撞检测的,我也是从那照搬来的,只是把代码提出来了而已,里面的代码都本人亲测,可以运行。
我的更多文章:
&&&&&&&&&&&&
( 20:42:58)
( 20:42:58)
( 19:21:04)
( 22:09:20)
( 20:42:58)
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。红警2任务地图分类导航
本类下载排行

参考资料

 

随机推荐