关闭

Genesis-3D 入门教程—25.相机的切换与视野调整

标签: Genesis-3D开源游戏引擎编辑器
902人阅读 评论(0) 收藏 举报
分类:

该文章转载自Genesis-3D官网,

更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn


相机的切换与视野调整

正如电影中的镜头用来将故事呈现给观众一样,Genesis-3D的相机用来将游戏世界呈现给玩家。相机是为玩家捕捉和显示世界的一种装置。现在我们来学习如何切换相机的类型与调整视野,这可以让你的游戏外观与众不同。

1.双击打开我们提供给你的工程。

2.在环境面板中打开太阳光,选中“”。

3.调整相机的位置,使场景在相机的视野范围内。

4.创建脚本。点击工程面板下的创建按钮,选择c#脚本。

5.挂载脚本。将新创建的脚本文件拖拽到右侧Camera属性栏内,即可将脚本挂载在Camera上面。

6.用MonoDevelop打开脚本。在资源管理器中选中camera脚本,点击右键,选择“在资源管理器中显示资源”。

7.编写代码。我们想要实现一项简单的功能:点击Space键来切换相机投影类型为“透视”或“正交”;点击w键和s键来切换相机的视野,具体代码如下。

01 using System;
02 using System.Runtime.CompilerServices;
03 using ScriptRuntime;
04 namespace ScriptRuntime
05 {
06     public class Camera : ScriptableClass
07     {
08              
09         public override void OnLoad()
10         {
11              
12         }
13              
14              
15         public override void OnFrame()
16         {
17  
18  
19             if (Input.KeyPressed(Code.W) )
20             {
21                 float fov = Owner.Camera.Fov ;
22                 Owner.Camera.SetupPerspectiveFovRH(100.0f , 1.0f, 5000.0f);
23             }
24  
25             if (Input.KeyPressed(Code.S))
26             {
27                 float fov = Owner.Camera.Fov ;
28                 Owner.Camera.SetupPerspectiveFovRH(20.0f , 1.0f, 5000.0f);
29             }
30  
31             if (Input.KeyDown(Code.Space))
32             {
33                 if (Owner.Camera.IsPerspective)
34                 {
35                     Owner.Camera.SetupOrthogonal(5.0f,1.0f,5000.0f);
36                 }
37                 else
38                 {
39                     Owner.Camera.SetupPerspectiveFovRH(25.0f,1.0f,5000.0f);
40                 }
41             }
42         }
43     };
44 }

8.发布并运行游戏。如图所示点击发布并运行按钮,我们可以生成游戏程序,尝试操作测试其功能的实现。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:49997次
    • 积分:621
    • 等级:
    • 排名:千里之外
    • 原创:1篇
    • 转载:72篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档