大家好,我是【1+1=王】, 热爱java的计算机(人工智能)渣硕研究生在读。
如果你也对java、人工智能等技术感兴趣,欢迎关注,抱团交流进大厂!!!
Good better best, never let it rest, until good is better, and better best.

近期会把自己本科阶段的一些课程设计、实验报告等分享出来,供大家参考,希望对大家有帮助。

博客更新至专栏【课程设计实验报告】:https://blog.csdn.net/weixin_43598687/category_11640051.html

一、 实验目的

  1. 掌握烘焙的基本流程与实现
  2. 掌握光影贴图的使用
  3. 掌握动画的基本应用

二、 实验内容

1. 实验任务

自己准备模型、材质、人或动物行为动画、脚本等,尝试实现场景中的烘焙光影贴图与人或动物行为动画,能通过键盘或鼠标改变人或动物行为。可根据需要增加其他内容。

2. 程序设计

1) 数据输入
(1)初始化输入

2) 数据存储(输入数据在内存中的存储)
(1)没有数据存储
(2)myAnimator存储Animator的组件,myCamera存储摄像机对象

3) 数据处理
(1)去掉场景中的Directional Light,然后添加Spot Light、Point Light、Area Light等光源,然后调节各光源的大小以及方向、位置等信息,以此达到目标效果
(2)初始化:

         myAnimator = GetComponent<Animator>();                  //初始化Animator组件UIInit();                                               //初始化UI界面myCamera = GameObject.Find("Main Camera").transform;    //初始化摄像机对象
设置跟随:myCamera.position = transform.position + new Vector3(0, 1.5f, -5);   //摄像机对象跟随myCamera.LookAt(transform);                                          //摄像机对象朝向
设置按钮位置和大小:
//按钮位置GameObject.Find("Canvas/Button1").transform.GetComponent<RectTransform>().localPosition = new Vector3(Screen.height / 6 - Screen.width / 2, Screen.height * 2 / 5 - Screen.height / 2);//按钮大小GameObject.Find("Canvas/Button1").transform.GetComponent<RectTransform>().localScale = Screen.width / 600f * new Vector3(1, 1, 1);//按钮位置GameObject.Find("Canvas/Button2").transform.GetComponent<RectTransform>().localPosition = new Vector3(Screen.height / 6 - Screen.width / 2, Screen.height / 6 - Screen.height / 2);//按钮大小GameObject.Find("Canvas/Button2").transform.GetComponent<RectTransform>().localScale = Screen.width / 600f * new Vector3(1, 1, 1);

(3)动画控制器:
4) 数据输出
(1)烘焙效果
Point Light烘焙效果
Area Light烘焙效果
Spot Light烘焙效果

(2)
动画效果:

三、 实验环境

  1. 操作系统:WINDOWS 10
  2. 开发工具:Unity3D
  3. 实验设备:PC

源代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class BUNAnimator : MonoBehaviour {Animator myAnimator; //声明Animator组件Transform myCamera;  //声明摄像机对象void Start () {myAnimator = GetComponent<Animator>();                  //初始化Animator组件UIInit();                                               //初始化UI界面myCamera = GameObject.Find("Main Camera").transform;    //初始化摄像机对象}void Update () {myCamera.position = transform.position + new Vector3(0, 1.5f, -5);   //摄像机对象跟随myCamera.LookAt(transform);                                          //摄像机对象朝向}void UIInit(){//按钮位置GameObject.Find("Canvas/Button1").transform.GetComponent<RectTransform>().localPosition = new Vector3(Screen.height / 6 - Screen.width / 2, Screen.height * 2 / 5 - Screen.height / 2);//按钮大小GameObject.Find("Canvas/Button1").transform.GetComponent<RectTransform>().localScale = Screen.width / 600f * new Vector3(1, 1, 1);//按钮位置GameObject.Find("Canvas/Button2").transform.GetComponent<RectTransform>().localPosition = new Vector3(Screen.height / 6 - Screen.width / 2, Screen.height / 6 - Screen.height / 2);//按钮大小GameObject.Find("Canvas/Button2").transform.GetComponent<RectTransform>().localScale = Screen.width / 600f * new Vector3(1, 1, 1);}public void ButtonOnClick(int index){myAnimator.SetFloat("Aniflag", index); //向动画控制器传递参数}
}

博客更新至专栏【课程设计实验报告】:https://blog.csdn.net/weixin_43598687/category_11640051.html

本科课程【虚拟现实引擎Unity3D】实验3 - 烘焙光影贴图与动画应用相关推荐

  1. 本科课程【虚拟现实引擎Unity3D】实验4 - 卡牌游戏完善

    大家好,我是[1+1=王], 热爱java的计算机(人工智能)渣硕研究生在读. 如果你也对java.人工智能等技术感兴趣,欢迎关注,抱团交流进大厂!!! Good better best, never ...

  2. 本科课程【计算机网络】实验2 - 交换机的VLAN配置实验

    大家好,我是[1+1=王], 热爱java的计算机(人工智能)渣硕研究生在读. 如果你也对java.人工智能等技术感兴趣,欢迎关注,抱团交流进大厂!!! Good better best, never ...

  3. 程序设计导引及在线实践_学院经纬计算学院程序设计基础与实验入选首批国家级一流本科课程...

    近日,教育部公布首批国家级一流本科课程认定清单,计算机与计算科学学院颜晖教授负责,张高燕.张泳.王云武.柳俊老师参与的<程序设计基础与实验>入选"线上线下混合式一流课程" ...

  4. 太原理工大学系统分析与设计实验报告实验室设备_皇家墨尔本理工大学电气工程师本科课程...

    皇家墨尔本理工大学电气工程师本科课程 核心课程 第1年 可再生电能系统 保护和高电压工程 电能转换 先进的控制系统(PG) 专业工程项目的一部分 专业工程项目B部分 项目准备.规划和解决问题 第二年 ...

  5. 南开大学计算机学院课表,南开大学本科课程教学大纲.pdf

    南开大学 本科课程教学大纲 课程名称:微型计算机系统设计 2-1..2-2 英文名称:Microcomputer System Design 课 号:1030011951 / 1030011952 所 ...

  6. ❤️汇总贴❤️本科课程汇总(武汉理工大学计算机科学与技术专业)

    我的微信公众号:知行研究院,点击查看二维码,欢迎关注 我的其他平台(点击蓝字可访问): GitHub | Gitee | 哔哩哔哩 | 语雀 | 简书 | 微信小程序 | 知行达摩院 注:以下仅显示博 ...

  7. c语言涛涛,首批国家级一流本科课程!国科大这些“金课”入选啦

    日前,教育部公布 首批国家级一流本科课程认定结果 国家级五大"金课"首次亮相 中国科学院大学 5门线下一流课程获得认定 线下一流课程主要 通过教学方法创新 实现对传统课堂教学的改革 ...

  8. 计算机地图制图学的应用,《计算机地图制图》本科课程教学大纲

    <计算机地图制图>本科课程教学大纲 一.<计算机地图制图>课程说明 (一)课程代码:Q1320273 (二)课程英文名称:geographic information scie ...

  9. 计算机辅助翻译课怎么学的,《计算机辅助翻译》本科课程学大纲翻译本科.doc...

    <计算机辅助翻译>本科课程教学大纲 课程名称: 计算机辅助翻译 课程编码: C021240 开课单位: 外国语学院 开设学期: 第六学期 课程类型: 发展方向类 课程性质: 选修 总学时数 ...

  10. 斯坦福计算机系课程内容,斯坦福计算机本科课程有哪些?

    据托普仕小编在斯坦福官网了解,斯坦福计算机专业的学生必须修3门核心课程.3门理论课程.26个学分的方向课程及选修课程.选修课既包含本方向的课程,也包含别的方向的课程,难度系数亦有所区别.接下来小编将为 ...

最新文章

  1. 信息系统安全等级保护的定级准则和等级划分
  2. SPSS学习笔记之——两独立样本的非参数检验(Mann-Whitney U )
  3. 学习心得——李嫣然、逯广捷
  4. java的六大_java程序员必备的六大工具!
  5. 没有梦想,你跟咸鱼有什么分别?
  6. JAVA进阶教学之(Object类中的hashCode方法)
  7. 视觉中国再度开盘跌停 网站仍旧无法打开
  8. DB2数据库常用基本操作命令
  9. html引入html include_PostgreSQL引入插件EXTENSION的常用方法
  10. Android签名机制学习笔记
  11. Matlab高级教程_第一篇:Matlab基础知识提炼_02
  12. 小众却非常好用的文件同步备份工具-FileYee
  13. python查找文字在图片中的位置_python实现简单图片文字识别翻译OCR
  14. 数据库查询结果随机排序
  15. 大数据十道经典海量数据处理面试题与十个方法大总结
  16. 对计算机课程的总体认识,对计算机基础课程的认识(浅谈计算机基础课程教学中计算思维的培养)...
  17. 联通将推自有品牌手机沃Phone 基于Android
  18. 【JavaScript】 数组 重要方法详解篇(一)
  19. 塑胶模具设计之冷却系统
  20. [英语阅读]保时捷与大众共商合并大计

热门文章

  1. mvp的全称_MVP英文全称是什么
  2. libero-soc许可证申请和环境配置
  3. 【第16章】 网络安全风险评估技术原理与应用 (软考:信息安全工程师)-- 学习笔记
  4. 魔方机器人之SVM算法识别魔方颜色
  5. 网络表情NLP(二)︱特殊表情包+emoji识别
  6. C语言 实现 面向对象编程 OOC
  7. 在scrapy里使用cookie获取美团外卖的数据
  8. OpenCV-Python画虚线
  9. Krpano元素的一些解析
  10. Katalon Recorder安装及使用