当前位置: 首页 > news >正文

Unity3D入门(一) : 第一个Unity3D项目,实现矩形自动旋转,并导出到Android运行

1. Unity3D介绍

Unity3D是虚拟现实行业中,使用率较高的一款软件。

它有着强大的功能,是让玩家轻松创建三维视频游戏、建筑可视化、实时三维动画等互动内容的多平台、综合型 虚拟现实开发工具。是一个全面整合的专业引擎

2. Unity安装

官网 : Unity - 实时内容开发平台 | 3D、2D、VR & AR可视化

选择下载Unity,如果没登录会弹出登录框,需要先注册登录下。

在这里插入图片描述

登录成功后,会进入到Unity版本下载的页面。

在这里插入图片描述

这里选择,从Unity Hub下载。

Unity Hub是Unity最新推出的,用于简化工作流程的,桌面端应用程序。

它提供了一个用于管理Unity项目、简化下载、查找、卸载,以及安装管理多个Unity版本的工具。

而且通过社区、学习、UPR、游戏云,我们可以更多的了解Unity和Unity项目。

在UnityHub的最下方,有一个信息提示,“您没有有效的许可证”。

在这里插入图片描述

Unity许可证,是作为软件的,版权管理的重要信息。

我们点击管理许可证,需要去激活许可证,选择个人版当中的不以专业身份使用Unity即可。

2.1 Unity安装

这是我安装的版本,安装时勾选了Android和WebGL、Windows,如果我们想增加其他的平台,可以修改配置。

在这里插入图片描述

2.2 新建项目

我们选择3D(Built-In Render Pipeline)选项,在Project Name中可以修改项目名称,点击Create project即可创建项目。

在这里插入图片描述

2.3 Unity界面介绍

在这里插入图片描述

2.3.1 场景视图

在这里插入图片描述

  • Alt键 + 鼠标左键拖拽 : 对场景进行旋转查看
  • Alt键 + 鼠标右键拖拽 : 对场景进行缩放查看
  • 点击鼠标左键 ,可以选中物体,结合工具类当中的在这里插入图片描述
    旋转、缩放等工具,对物体进行具体的操作。
  • 场景手柄工具 在这里插入图片描述
    ,用于改变场景的不同视角,而我们点击图标下方的小文字,可以实现场景从透视到正交之间的切换。
2.3.2 游戏视图

在这里插入图片描述

  • 游戏视图是Unity开发的预览视图,可以更便捷地调试游戏程序,去检测我们游戏当中存在的问题。
    • 当然,游戏视图只能查看和测试,而不能进行任何的操作。
2.3.3 Hierarchy面板

在这里插入图片描述

  • 包含本场景中所有的素材信息
  • 右击空白处可以创建新的物体

3. Visual Studio安装

Visual Studio可以用来编写Unity3D的脚本,我们可以提前先安装一下,下载Community (社区版,是免费的) 即可。

下载地址 : Visual Studio 2022 IDE - 适用于软件开发人员的编程工具 (microsoft.com)

安装方式具体看Visual Studio官方文档 : 安装并配置 Visual Studio Tools for Unity | Microsoft Learn

4. 让视角围着立方体旋转

4.1 创建Plane地面

首先我们要创建一个地面

在这里插入图片描述

效果如下所示

在这里插入图片描述

4.2 创建立方体

在这里插入图片描述

拖动箭头可以调整位置

在这里插入图片描述

调整位置后,效果如下所示

在这里插入图片描述

4.3 创建脚本

创建Script文件夹

在这里插入图片描述

Script文件夹里面,创建CameraController脚本

在这里插入图片描述

双击这个脚本,就会跳转打开Visual Studio

在这里插入图片描述

修改脚本为如下内容

using UnityEngine;public class CameraController : MonoBehaviour
{public Transform cube;public float rotationSpeed = 2f;void Update(){transform.RotateAround(cube.position, Vector3.up, rotationSpeed * Time.deltaTime);}
}

接着将这个脚本拖到Main Camera

在这里插入图片描述

这个时候,可以看到Main CameraInspector面板上多了一个Camera Controller的脚本组件

在这里插入图片描述

接着,我们将立方体拖到Main CameraInspector面板的Camera Controller脚本的Cube中,从而绑定脚本中的public Transform cube;

在这里插入图片描述

接着点击在这里插入图片描述
按钮运行项目,在Game视图在这里插入图片描述
中发现相机视角已经围绕立方体旋转了。

在这里插入图片描述

5. 导出到Android

接着我们可以将项目打包成apk,从而可以在Android中运行。 (需要注意,2.1 Unity安装步骤中Unity Hub需要安装Android平台)

我们点击File>Build Settings

在这里插入图片描述

这里我们还可以点击Player Settings,选择Landscape Left,这样我们生成的apk,默认情况下就会以横屏运行了。

在这里插入图片描述

导出Android,设置横屏 : unity在打包时设置手机屏幕横屏竖屏的方法_unity打包默认横屏-CSDN博客

接着点击BuildBuild And Run(构建并安装到手机里运行)

在这里插入图片描述

可以发现构建完成后,在项目目录下生成了一个apk文件

在这里插入图片描述

我们将这个apk安装到手机上

可以发现如下效果

在这里插入图片描述

6. Unity3D入门系列文章

Unity3D入门(一) : 第一个Unity3D项目,实现矩形自动旋转,并导出到Android运行
Unity3D入门(二) :Unity3D过渡切换视角
Unity3D入门(三) : Android和Unity3D交互 - Android调用Unity
Unity3D入门(四) : Android和Unity3D交互 - Unity调用Android

参考
Unity3D应用开发_中国大学MOOC(慕课) (icourse163.org)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 软考高级:逻辑地址和物理地址转换 AI解读
  • LeetCode[中等] 155. 最小栈
  • React组件如何暴露自身的方法
  • Python | Leetcode Python题解之第415题字符串相加
  • Navicate 链接Oracle 提示 Oracle Library is not loaded ,账号密码都正确地址端口也对
  • Ubuntu LLaMA-Factory实战
  • 【鸿蒙】HarmonyOS NEXT星河入门到实战8-自定义组件-组件通信
  • 机器学习_神经网络_深度学习
  • [OpenGL]使用OpenGL绘制带纹理三角形
  • 【深度学习|可视化】如何以图形化的方式展示神经网络的结构、训练过程、模型的中间状态或模型决策的结果??
  • Compiler Explorer 开源项目-在线编译器网站
  • 9.3Otsu阈值分割
  • 使用Django 搭建自动化平台
  • 项目实战 (15)--- 代码区块重构及相关技术落地
  • (k8s)kubernetes 部署Promehteus学习之路
  • 自己简单写的 事件订阅机制
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 2019年如何成为全栈工程师?
  • C语言笔记(第一章:C语言编程)
  • es6要点
  • Git学习与使用心得(1)—— 初始化
  • iOS高仿微信项目、阴影圆角渐变色效果、卡片动画、波浪动画、路由框架等源码...
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • mongo索引构建
  • springMvc学习笔记(2)
  • SQLServer之创建数据库快照
  • Vue.js-Day01
  • webpack4 一点通
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 和 || 运算
  • 聚簇索引和非聚簇索引
  • 聊聊directory traversal attack
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 小程序button引导用户授权
  • ​渐进式Web应用PWA的未来
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (js)循环条件满足时终止循环
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (南京观海微电子)——COF介绍
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (学习日记)2024.01.09
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .Net 6.0--通用帮助类--FileHelper
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .net FrameWork简介,数组,枚举
  • .Net MVC4 上传大文件,并保存表单
  • ??Nginx实现会话保持_Nginx会话保持与Redis的结合_Nginx实现四层负载均衡
  • @DataRedisTest测试redis从未如此丝滑
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...
  • @RequestBody与@RequestParam:Spring MVC中的参数接收差异解析
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)