- 博客(60)
- 收藏
- 关注
原创 叉乘、点乘、矩阵变换
目录前言基础向量向量的定义向量的点乘向量点乘的运用向量的叉乘向量叉乘的运用矩阵的乘积变换Transform缩放Scale翻转切变旋转平移前言基础向量向量的定义向量:指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。向量AB=B-A即B的坐标减去A 的坐标向量属性1、 向量的平移之后仍表示同一个向量2、 向量具有长度的属性 | | a | |3、 向量具有方向的属性 可以利用向量除以自身的模长,得到单位向量用来表示方向### 向量的运算
2022-02-19 18:21:42
5123
原创 Unity基础(五)--物理引擎
物理引擎:模拟真实世界中物体物理特性的引擎文章目录一、刚体属性值二、使用步骤1.引入库2.读入数据总结一、刚体使物体具有物理属性使物体拥有重力想要使物体与地面发生碰撞需要添加碰撞器碰撞器的面数越小性能越好属性值Mass质量(0.0000001,1000000000):根据现实生活中的质量来设置Drag阻力:当受力移动时物体受到的空气阻力。0表示没有空气阻力,极大时可以使物体停止运动。通常砖头0.001,羽毛设置为10Angular Drag角阻力:当受扭力旋转时
2021-02-04 22:20:03
673
2
原创 Unity基础(四)--3D数学
文章目录一、向量基本属性向量与标量的乘除二、三角函数角的度量方式以下是本篇文章正文内容,下面案例可供参考一、向量一个数字列表,表示各个维度上有位移基本属性有大小方向的物理量1、大小就是向量的模长float dis=vector.magnitude;2、方向描述空间中向量的指向vector1.Normalize();将vector1自身设置为单位向量可以表示物体的位置物体坐标向量,从世界(0,0,0)出发指向物体的一条线段//求向量模长 private void Demo01(
2021-01-20 22:43:55
666
原创 Unity基础(三)--动画系统
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、动画系统1.Animation组件2.动画编辑器二、代码控制动画的播放1.动画类包含基本属性动画播放模式一、动画系统1.Animation组件2.动画编辑器选中需要添加动画的游戏物体Window—>Animation.点击Creat给物体创建动画(快捷键Ctrl+6)点击Add Property添加动画属性(因为是开门动画,所以添加Rotation属性)点击红色按钮,进行录制。时间
2021-01-19 22:01:53
485
原创 Unity基础(二)--Time类
Time类:获取时间信息的接口。所包含的一些变量:常用属性:1.deltaTime:每帧消耗的时间。保证移动速度不受机器性能、渲染的影响类似的属性:1、unscaledDeltaTime:无关timeScale,以秒计算,要完成最后一帧的时间(只读)。2、maximumDeltaTime:一帧能获得的最大时间。物理和其他固定帧速率更新。类似FixedUpdate3、smoothDeltaTime:经平滑的Time.deltaTime时间(只读)。4、fixedDeltaTime:以.
2021-01-17 22:26:34
356
原创 Unity基础(一)--基本类
脚本:.cs的文本文件 类文件附加到游戏物体中,实现一些功能文章目录C#与Unity脚本的区别生命周期初始阶段物理阶段逻辑阶段输入事件场景渲染结束阶段调试调试步骤Start中调试Update中调试Unity总继承关系图Component类Transform类GameObject类Object类C#与Unity脚本的区别C#类中包含:字段属性构造函数方法Unity中:字段方法不要在脚本中写构造函数字段基本的public类型变量,可以在inspector面板中显.
2021-01-16 22:01:18
243
原创 Unity动画插件--DOTween
DOTween的简单用法1介绍DOTween下载2两种脚本控制动画播放的方式使用UGUI3使用组件方式控制动画播放1介绍DOTween下载在Unity3D中Asset Store中搜索DOTween进行下载和Import。商店中有一个免费的和收费的,区别就是功能的不同,当然是收费的更强大,如果只是学习,免费的就可。2两种脚本控制动画播放的方式使用UGUI3使用组件方式控制动画播放这三种方式其他用法3,From Tweens4,特殊设置动画播放的方式循环方式完成的事件动画的生命周
2020-10-30 09:46:26
1035
原创 Unity3D--UGUI(二)
文章目录Text描边和阴影动态字体字体花屏Image组件Text文本编辑需要TTF字体(是Apple公司和Microsoft公司共同推出的字体文件格式,随着windows的流行,已经变成最常用的一种字体文件表示方式。)Text组件提供了横向、纵向自动切换的功能。*如果UI元素不需要点击事件,建议不要勾选。因为UGUI的事件系统会遍历出现所有带Raycast Target的组件,这会带来一...
2020-04-27 21:50:46
1104
原创 Unity3D--UGUI(一)
什么是游戏的GUI?游戏的开始菜单RPG游戏的菜单栏,侧边栏和功能栏 比如背包系统,任务列表设计用来控制移动的虚拟杆和攻击的攻击按钮UI的一些组件Text 文本组件Image 图片Raw Image 可以拖放一个材质Button 按钮Toggle 开关Slider 滑动器 可以调节声音大小Scrollbar 滚动条Input Field 输入框Canvas 画...
2020-04-19 18:51:50
988
原创 实施虚拟现实技术理论(课堂笔记七)
虚拟现实开发软件和语言三维设计软件1.3ds Max2.LumionSketchup、3ds Max 、Lumion比较:虚拟现实开发平台三维设计软件虚拟现实注重的是真实感和沉浸感,真实感需要通过3D设计软件将现实世界和环境真实再现,常用的3D设计软件有3ds Max | Maya | Softimage | ZBrush | Lumion 3D | Cinema 4D等1.3ds Max...
2020-04-18 10:00:24
1185
原创 实时虚拟现实技术理论(课堂笔记六)
虚拟现实系统的物理设备虚拟现实系统的输出设备1.视觉感知的相关概念2.听觉感知设备3.触觉感知设备虚拟现实系统的输出设备当用户与虚拟现实系统交互时,能否获得与真实世界相同或相似的感知,并产生“身临其境”的感受,将直接影响系统的真实感。为了实现虚拟现实系统的沉浸特性,输出设备必须能将虚拟世界中各种感知信号转变为人所能接收的视觉、听觉、触觉、味觉等多通道刺激信号1.视觉感知的相关概念视域...
2020-04-17 21:52:28
886
原创 实时虚拟现实技术(课堂笔记五)
虚拟现实系统的硬件设备虚拟现实系统的输入设备跟踪定位设备1.相关性能参数电磁波跟踪器超声波跟踪器虚拟现实系统的输入设备输入设备用来输入用户的动作,使用户可以驾驭一个虚拟场景,在与虚拟场景进行交互时,利用大量的传感器来管理用户的行为,并将场景中的物体状态反馈给用户。为了实现人与计算机之间的交互,需要使用特殊的接口把用户命令输入给计算机,同时把模拟过程中的反馈信息提供给用户。根据不同的功能和目的...
2020-04-17 21:18:36
967
原创 实时虚拟现实技术理论(课堂笔记四)
文章目录一、三维虚拟声音技术1.三维虚拟声音的特征2.头部相关传递函数3.语音识别与合成技术1)语音识别技术2)语音合成技术二、人机交互技术三、虚拟现实引擎一、三维虚拟声音技术虚拟环境中的三维虚拟声音与人们熟悉的立体声音有所不同三维虚拟声音则是来自围绕听者双耳的一个球形中的任意地方,即声音出现在头的上方、后方或者前方1.三维虚拟声音的特征全向三维定位,是指在虚拟环境中对声源位置的实...
2020-04-13 21:47:27
1114
原创 游戏引擎原理及应用--地形系统
高程图Heightmap灰度像素图只包含一个颜色通道每个像素存储该位置从地面的高度黑色是地面,白色是最高点除了用于地形数据之外,还可以用于凹凸映射和位移映射用ps制作一个高程图,并保存为RAW格式在网上查找也可以,但是我没找到就自己画了一个做演示,,,1.在Unity中新建一个地形GameObject—>3D Object—>Terrain...
2020-04-11 09:48:34
494
原创 Unity3d--摄像机的一些属性及相机跟随
摄像机(Camera)用于观察游戏世界摄像机的观察区域叫做“视锥体”,在“视锥体”范围内的物体,我们可以看到。一、摄像机的基本操作:在Hierarchy面板上选中摄像机,Scene视图会出现预览窗口根据轴向移动摄像机的位置,旋转摄像机的角度GameObject–>Align With View(Ctrl+Shift+F)对其视图创建摄像机,在Hierarc...
2020-04-01 22:10:17
472
原创 Unity3D之物体运动(二)
在上一篇文章里介绍了两种使物体运动的方式这篇文章来介绍下鼠标和键盘控制物体的移动。一、transform下控制物体移动using System.Collections;using System.Collections.Generic;using UnityEngine;public class NewBehaviourScript : MonoBehaviour { // Use...
2020-03-27 08:28:11
334
原创 Unity3D小白游戏--打砖块
先让我们康康效果演示:1.先创建地面和墙地面和墙分别为Plane和Cube类型。将Cube设置为Prefabs(预制体),添加刚体组件添加材质给地面2.制作子弹我们要让子弹在相机的位置创建并发射,所以要给Main Camera添加一些脚本组件。(1)让相机移动在Main Camera上添加一个脚本组件。using System.Collections;using Sy...
2020-03-26 17:56:30
413
原创 Unity3d小白游戏--Roll A Ball
我们先看一下游戏效果:第一步:制作桌面效果分析:grand 创建Hierarchy面板下,右键->3D Object->Plane;改名为grand添加Material默认大小为10mMaterial 材质球在Project面板下,右键->Create->Material注:将创建的材质球放在Assets文件夹下的Materials文件夹内...
2020-03-26 13:05:34
596
原创 Unity3d--碰撞检测
碰撞分为三个阶段:Collider.OnCollisionEnter两个物体刚接触时,有点像物理中的时刻,只触发一次Collider.OnCollisionEnter传送门Collider.OnCollisionStay两个物体接触一段时间,可以触发多次Collider.OnCollisionStay 传送门Collider.OnCollisionExit两个物体刚离开的时刻,只...
2020-03-25 18:25:05
2252
5
原创 Unity3d之物体运动(一)
在游戏场景中使物体运动的方式,我目前是找到了两种方法。如果你会其他的方法,欢迎在评论区里交流。一、利用transformAPI传送门:https://docs.unity3d.com/ScriptReference/Transform.html方法没只截取一部分,不要求全会,看别的教程时,用哪个会哪个就行 。1.旋转运动using System.Collections;using...
2020-03-25 13:39:29
1440
原创 Unity3D--场景、游戏物体、组件的概念
在我们创建的游戏中,至少有一个场景。场景,就像电影画面一样。如果游戏太大的话,就可以分场景来做。游戏物体:在场景中存在的物体;创建游戏物体在Hierarchy中,右键会出现目录组件存放在Inspector面板中,选中一个游戏物体,就会在Inspector面板中出现对应的组件。组件类似于游戏物体的一些属性。上图的游戏物体有四个组件Transform 组件,Positio...
2020-03-25 10:00:04
1066
1
原创 Unity3D--MonoBehaviour
文章目录MonoBehaviour1.start()2.Update()3.FixedUpdate()在看书时会看到很多不知道的专有名词和方法,查看Unity API寻求解答。以下方法或类,不分先后,不分重点MonoBehaviour在看书时,一开始就会看到自定义个类会继承MonoBehaviour类,那MonoBehaviour类是什么呢?下面就让我们来康康。MonoBehavio...
2020-03-20 10:16:32
310
原创 Java--FileWriter
创建流对象,建立数据存放文件FileWriter fw=new FileWriter(“a.txt”);调用流对象的写入方法,将数据写入流fw.writer(“asdfg”);关闭流资源,将流中数据清空到文件中fw.close();package chapter12;import java.io.File;import java.io.FileWriter;im...
2020-03-19 11:41:52
143
2
原创 Java--File文件递归
递归输出文件夹里所有文件和文件夹package chapter12;import java.io.File;import java.io.IOException;public class FileDemo2 { public static void main(String[] args) throws IOException { File f1=new File("E:\\M...
2020-03-16 11:33:07
129
原创 Java--File类
File类就是将文件或者文件夹封装成一个对象。格式特点:File(String pathname)可以把一个存在或者不存在的文件(文件夹)封装成一个对象File(String Parent,String Child)File(File Parent,String Child)package chapter12;import java.io.File;public class...
2020-03-16 10:50:20
124
原创 Java--HashMap
特点:成对出现键必须唯一根据键存值和取值package chapter09;import java.util.HashMap;import java.util.Map;public class HashMapDemo { public static void main(String[] args) { HashMapDemo h=new HashMapDemo(); ...
2020-03-10 12:38:30
116
原创 Java--TreeSet
TreeSet特点:存储数据属于同一类型存储时按照自然排序存储自定义对象,1.自定义类要实现Comparable接口,重写Comparable类2.制定一个比较器//自带排序package chapter09;import java.util.Set;import java.util.TreeSet;public class TreeSetDemo { public s...
2020-03-08 12:00:56
148
1
原创 Unity3D--拓展编辑器
文章目录一、拓展Project视图1.拓展右键菜单2.创建菜单3.拓展布局5.监听事件二.拓展Hierarchy视图1.拓展菜单2.拓展布局更改Unity编辑器(一共就3步)第一步第二步第三步打开即可,over。一、拓展Project视图1.拓展右键菜单编辑器使用的代码应该仅限于编辑模式下,正式的游戏包不应该包含这些代码。Unity提供了一个规则:如果属于编辑模式下的代...
2020-03-06 12:07:30
671
2
原创 c#连接数据库作业
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using MySql.Data.MySqlClient;namespace ConsoleApp7{ class Program { ...
2020-02-26 22:29:48
130
原创 Java--HashSet
特点:1.无序2.元素唯一package chapter09;import java.util.HashSet;import java.util.Set;public class HashDemo { public static void main(String[] args) { HashDemo h=new HashDemo(); h.HashTest(); ...
2020-02-26 18:30:27
164
原创 Java--LinkedList
ArrayList与LinkedList比较:ArrayList:类似于数组,在内存中的存储位置是连续的优点:查询快缺点:插入删除操作慢LinkedList:类似于指针,在内存中的存储位置可以不连续优点:插入删除操作快缺点:查询慢//addFirst()方法演示package chapter09;import java.util.LinkedList;public c...
2020-02-24 18:36:12
110
原创 实施虚拟现实技术理论(课堂笔记三)
文章目录立体高清显示技术立体视觉的形成原理立体高清显示技术三维建模技术几何建模物理建模运动建模立体高清显示技术立体高清显示技术是虚拟现实的关键技术之一,它使用户在虚拟世界里具有更强的沉浸感,立体高清显示技术的引入可以使各种模拟器的仿真更加逼真。立体高清显示可以把图像的纵深、层次、位置全部展现,参与者可以更直观、更自然地了解图像的现实分布状况,从而更全面地了解图像或显示内容的信息。立体视...
2020-02-24 10:43:21
680
原创 Java--List
文章目录特点List循环遍历集合框架特点List接口:存储和读取的顺序一致有索引有序的,可以重复特殊的方法:void add(int index,Object o) 添加Object get(int index) 获取Object remove(int index) 删除,返回值是删除的元素Object set(int index,Object o)...
2020-02-23 21:03:34
145
原创 Java--Collection
文章目录1.size()2.add(Object a) | addAll(Collection c)3.clear()4.isEmpty()5.remove(Object o)6.removeAll(Collection c)7.contains(Object o)8.containsAll(Collection c)9.equals(Collection o)10.returnAll11.toA...
2020-02-23 18:38:50
135
原创 Unity3D--Unity篇(一)
好吧,看了脚本的序篇才知道要先了解Unity编辑器。。。文章目录1.Project视图2.Hierarchy视图3.Inspector视图标题栏组件栏4.Scene视图导航栏标题栏坐标系控制器5.Game视图标题栏1.Project视图Project视图又称资源视图,这里面放的都是引擎所用到的游戏资源。资源分为两部分:外部资源图片资源,模型资源,动画资源,视频和声音资源。特点:...
2020-02-23 12:40:11
517
原创 Java--单例模式下多线程问题
//饿汉式class Single{ private static Single s=new Single(); private Single() { } public static Single getInstance() { return s; }}//懒汉式class Single{ private static Single s; private S...
2020-02-20 18:54:50
192
原创 Unity3D--C#篇(一)
文章目录一、基础组件和脚本1.Transform组件2.组件的启用和关闭3.脚本脚本的管理创建脚本MonoDevelop编辑器脚本代码简介脚本使用Console面板二、基本操作1.基本变量2.条件语句if语句switch语句3.数组4.循环foreach循环for循环while循环函数一、基础组件和脚本组件:Component,游戏物体的组成零件。用于存储游戏物体的基本信息。1.Transf...
2020-02-18 19:46:37
1519
原创 Java--线程(Thread)常用方法+卖票实例演示
常用方法start() 启动线程并执行run()方法run() 线程任务封装在run()中currentThread() 静态的获取当前线程对象的引用getName() 获取线程的名字用法演示:Thread.currentThread().getName();setName() 改变当前线程的名字用法演示:Thread.currentThread(...
2020-02-17 21:27:39
181
原创 实时虚拟现实技术偏理论(课堂笔记一+二)
一、虚拟现实的定义虚拟现实指由计算机产生的三维交互环境,用户参与环境中,获得角色,从而获得体验。从国内外学者的概述来总结,虚拟现实技术是通过计算机和一些设备,令用户得到视觉,听觉,触觉甚至于嗅觉上的体验,使用户在三维虚拟世界中自由探索并与之交互。二、虚拟现实的特征沉浸感指用户能感受到被虚拟世界所包围,好像完全置身于虚拟世界。交互性指用户对模拟环境内物体可操作程度和从环境得到反...
2020-02-17 09:50:14
883
原创 Java-线程创建方式
先看一个正常的程序public class JVM { public static void main(String[] args) { Person s1=new Person("张三"); Person s2=new Person("李四"); s1.run(); s2.run(); for(int i=1;i<=10;i++) { System.ou...
2020-02-16 20:46:58
143
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人