# lab03 **Repository Path**: ma-xinjing/lab03 ## Basic Information - **Project Name**: lab03 - **Description**: 实验目的 了解游戏循环基本原理,掌握常见游戏事件的使用及其执行顺序 学会使用 unity 的简单操作与编程,掌握游戏世界的基本概念,如:游戏对象(实体)、部件、系统、脚本、预制、场景、项目、资源等 学习独立阅读游戏手册和API,初步了解 mvc 设计用于小型游戏编程 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-10-08 - **Last Updated**: 2024-10-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # lab03 #### 介绍 实验目的 了解游戏循环基本原理,掌握常见游戏事件的使用及其执行顺序 学会使用 unity 的简单操作与编程,掌握游戏世界的基本概念,如:游戏对象(实体)、部件、系统、脚本、预制、场景、项目、资源等 学习独立阅读游戏手册和API,初步了解 mvc 设计用于小型游戏编程 #### 一、简答题 ##### 1、游戏对象和assets ###### 游戏对象 游戏对象是一个能够容纳实际功能的组件,它们本身不是很完整,只是充当组件的容器 ###### assets 它是我们创作游戏时添加进工作区的资源 ###### 联系 可以使用asset资源构建我们的游戏对象,有些assets可能并没有在游戏场中进行使用 ##### 2、总结资源、对象组织的结构 资源结构主要包括动画,文本,场景和一些使用说明等; 游戏对象树的层次包括摄像机、开始位置、场景布局以及文本等; ##### 3、MonoBehaviour 基本行为或事件触发的条件 编写代码: ![alt text](./assets/image-7.png) 展示结果: ![本地路径](./assets/image.png) 总结: ##### 4、查找脚本手册,了解 GameObject,Transform,Component 对象 ###### 翻译 a、GameObject: unity场景里面所有实体的基类 b、Transform: 物体的位置、旋转和缩放 c、Component: 一切附加到游戏物体的基类 ![alt text](./assets/image3.png) ###### 描述属性 activeSelf: 可以定义对象名称、动静态等属性 Transform: 可以定义对象的位置、面向方向、大小; Box Collider: 可以调整坐标的位置大小; Component: 可以给对象增加行为 ![alt text](./assets/image-2.png) ##### 5、资源预设与对象克隆 预设的好处: 可以提前将游戏中所需要的游戏对象进行设计打包,成为一个模板。在设计过程中,随时可以直接从资源中进行加载,成为一个游戏对象。预设的存在方便了面向对象思想的应用 预设和克隆之间的关系: 克隆是将已经存在的游戏对象或者资源中的预设进行复制。因此预设时克隆的一个基础步骤,预设之后就可以在资源中针对自己需要的对象进行克隆; ###### 二、游戏实验 使用Unity中的IMGUI框架制作一个简易版计算器 #### 实验步骤 1. 创建一个空对象 2. 编写脚本 a、在OnGUI事件部分创建计算器的各个按钮组件以及对应的响应事件(创建整个model实体) ![alt text](./assets/image-4.png) b、通过init函数和cal()函数来控制初始化和计算行为 ![alt text](./assets/image-6.png) c、通过Star()函数作为系统控制 3. 运行脚本 成果展示: ![alt text](./assets/image-5.png) #### 使用说明 1. 下载C#代码 2. 在Unity中创建一个空对象 3. 将脚本拖给空对象并运行 #### 成果展示视频 https://www.bilibili.com/video/BV1Uy2oYAEhV/?vd_source=a7c3df8a6499a72b18c03554301c3a0f #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)