Unity3D常见技术点(持续更新)
一:获取对象, 添加对象等
1:使用prefab生成对象
- GameObject ballObj = GameObject.Instantiate(Resources.Load("Fx/fx_bullet001"),
transform.position + transform.forward * -0.8f + transform.up * ,
Quaternion.identity) as GameObject;
2:添加脚本到对象, 并更改脚本值
- ballObj.AddComponent ("BasicGun");
- BasicGun pScript = ballObj.GetComponent ("BasicGun") as BasicGun;
- pScript.player = playerObj;
3:在UIButton对象中获取 UIButton自身.
- UISprite sprite = gameObject.GetComponentInChildren<UISprite> ();
二: 旋转相关
1:让一个对象与另一个对象的旋转角度一样(即朝向同一个方向)
- // 主角的朝向
- Vector3 dVector = playerObj.transform.forward;
- // 计算要旋转的角度
- float testA = Mathf.Atan2(dVector.x, dVector.z);
- testA = testA* Mathf.Rad2Deg; //本函数将 number 从弧度转换为角度 rad2deg(M_PI_4); // 45
- // 对象旋转到对应角度
- ballObj.transform.rotation = Quaternion.Euler(new Vector3(0, testA,0));
ps: 不能直接为transform.rotation赋值。可以使用各种Quaternion的方法。
2: 旋转某对象的 方向
- ballObj.transform.Rotate(Vector3.up, 30);
- using UnityEngine;
- using System.Collections;
- public class example : MonoBehaviour {
- void Update() {
- // Slowly rotate the object around its X axis at 1 degree/second.
- //围绕x轴每秒1度,慢慢的旋转物体
- transform.Rotate(Vector3.right, Time.deltaTime);
- // ... at the same time as spinning it relative to the global
- // Y axis at the same speed.
- //相对于世界坐标,围绕y轴每秒1度,慢慢的旋转物体
- transform.Rotate(Vector3.up, Time.deltaTime, Space.World);
- }
- }
其他:
Unity3D常见技术点(持续更新)的更多相关文章
- Android源码编译常见错误(持续更新)
本文为个人工作中处理遇到的编译问题做个小结,后续遇到新的问题,持续更新. No such file or directory: 1. 检查路径是否有问题,文件是否存在,若文件存在且路径没问题 2. 检 ...
- 【技术累积】【点】【Java】【12】几种常见编码(持续更新)
问题描述 有这么一段代码: String question = new String(record.getQuestion().getBytes("iso-8859-1"), &q ...
- 前端可视化项目流程,涉及three.js(webGL),3DMax技术,持续更新
最近在做一个可视化展示的项目,记录一下流程: 建模,模型来源,可以参考沙盘展示类项目,自己建模或者拼装其他源模型(本人以前是3D建模师,可以应付一些简单的场景) 有效模型导入到web端,这里采用的ob ...
- java开发中用到的技术(持续更新.....)
一.数据库 1.数据库连接池:当jdbc连接数据库使用DriverManager 获取时,每次向数据库建立连接的时候都要讲connection加载到内存中,当同时使用的用户数量较大时,会造成服务器不堪 ...
- mysql 用法记录和常见错误,持续更新。
2016-10-20 08:31:46 在navicat创建表的时候,遇到"#1166 - Incorrect column name'Id'"问题,原因是创建的字段中有空格(是直 ...
- javascript/jquery 常见功能实现(持续更新...)
1. input 只能输入整数数字和字母 $(document).on('keyup','#no',function(){ var val = $.trim($(this).val()); if(va ...
- c++常见输入方法[持续更新]
字符串输入 cin>> 使用空格确认字符串结束位置,保留换行符在输入队列当中 单个字符读取 cin.get(), cin.get(char) 每次读取一行: cin.getline(cha ...
- ios 开发 常见问题解决 (持续更新)
1.使用cocoaPods引用第三方类库,报错:file not found . 解决方案:设置 Project->Info->Configurations之后 clear ,然后再 ...
- 3.C#/.NET编程中的常见异常(持续更新)
1.Object reference not set to an instance of an object. 未将对象引用(引用)到对象的实例,说白了就是有个对象为null,但是你在用它点出来的各种 ...
随机推荐
- swift 泛型
T就是类型,范型
- Spring学习之代理
Spring的核心就是IOC和AOP IOC就是控制反转: 就是用配置文件的方式给javabean 赋值. 正常的在程序里;用new 的方式创建一个对象的时候,他就固定了值, 如果是注入的方式的话 ...
- Headfirst设计模式的C++实现——简单工厂模式(Simple Factory)之二
为了引出后续的工厂方法,把在简单工厂模式的基础上增加了新功能——加盟店 简而言之就是把原来的单一简单工厂(能生产cheese和greek两种pizza)细分成了纽约地区的和芝加哥地区的(每种地区都能生 ...
- Mantle 简单教程
Mantle可以很方便的去书写一个模型层的代码. 使用它可以很方便的去反序列化JSON或者序列化为JSON(需要在MTLModel子类中实现<MTLJSONSerializing>协议) ...
- ubuntu 安装qq
受不了webqq那个界面 ,各种不习惯 .今天在ubuntu 12.04LTS 版本中 ,终于装上了qq2012,下面介绍一下安装方法 1 安装 wine sudo apt-get install ...
- MyEclipse 搭建webservice (axis1.4)
0 引言 以前都是做javaweb的 最近因工作需要 接触了webservice 关于什么事webservice,与web的区别,soap,跟http的区别,asix1和asix2的区别,为什么不用 ...
- 23种设计模式全解析 (java版本)
转自:http://blog.csdn.net/longyulu/article/details/9159589 其中PHP常用的五种设计模式分别为:工厂模式,单例模式,观察者模式,策略模式,命令模式 ...
- PHP实现递归的三种方法
递归函数是我们常用到的一类函数,最基本的特点是函数自身调用自身,但必须在调用自身前有条件判断,否则无限无限调用下去.实现递归函数可以采取什么方式呢?本文列出了三种基本方式.理解其原来需要一定的基础知识 ...
- PHP 自 5.2 到 5.6 中新增的功能详解
截至目前(2014.2), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已经不在维护 [注] 的 PHP5.2, 其余的一半用户在使用 PHP5.3 [注].因为 PHP 那 ...
- 【javascript 变量和作用域】
今天学习了javascript 的变量和作用域的基本知识,对于以前在开发中遇到的一些不懂的小问题也有了系统的认识,收获还是比较多的. [基本类型和引用类型] ECMAScript 变量可能包含两种不同 ...