1,Vector3 类型变量存储向量坐标值

Vector3.forward

Vector3(0,0,1)

Vector3.up

Vector3(0,1,0)

Vector3.right

Vector3(1,0,0)

Vector3.zero

Vector3(0,0,0)

Vector3.one

Vector3(1,1,1)

2,给对象RigidBody添加组件 ,然后给RigidBody一个速率(velocity)让它的移动

using UnityEngine;
using System.Collections; public class moveFwd : MonoBehaviour
{ public float moveSpeed = 0.1f; // Use this for initialization
void Start()
{ } // Update is called once per frame
void Update()
{
Vector3 moveForward = new Vector3(moveSpeed, , moveSpeed);
this.GetComponent<Rigidbody>().velocity = moveForward;
}
}

  

3, 鼠标移入变红色,鼠标移出还原颜色,点击鼠标播放声音,JS代码实现:

#pragma strict

var oldColor:Color;
var audioPlay=false; function Start () {
oldColor= this.GetComponent(MeshRenderer).material.color;
} function Update () { } //鼠标移入
function OnMouseOver(){
this.GetComponent(MeshRenderer).material.color=Color.red; //旋转
this.transform.Rotate(,-*Time.deltaTime,);
print("OnMouseOver");
}
//鼠标移出
function OnMouseExit(){
this.GetComponent(MeshRenderer).material.color=oldColor;
print("OnMouseOut");
}
//点击鼠标
function OnMouseDown(){
if (audioPlay==false) {
this.GetComponent(AudioSource).Play();
audioPlay=true;
}else {
this.GetComponent(AudioSource).Pause();
audioPlay=false;
}
print("OnMouseDown"); }

4, 操作文本的时候,记得先引用  UnityEngine.UI:

using UnityEngine;
using System.Collections;
using UnityEngine.UI; public class count : MonoBehaviour
{
void OnMouseDown() {
GameObject.Find("Canvas/Text").GetComponent<Text>().text = "Score";
}
}

5,给小球添加物理材质,是小球跳动:Asseets → Create → Physic Material :

  

  JS控制小球颜色变化:

var t:float=;
function Update () {
t+=Time.deltaTime;
//每3秒换一个随机颜色
if(parseInt(t)%==){
gameObject.Find("Sphere").GetComponent(MeshRenderer).material.color=Color(Random.Range(,)/255f,Random.Range(,)/255f,Random.Range(,)/255f);
} }

6, 获取对象放在Start()方法里面,不要放到Update()里面,这样会提高运行效率,JS控制灯光变强、变弱:

#pragma strict
import UnityEngine.Light; var directLight:GameObject;
var theTxt:GameObject;
var objCube:GameObject; function Start () {
//获取对象
directLight=gameObject.Find("Directional Light");
theTxt=gameObject.Find("Canvas/Text");
objCube=gameObject.Find("Cube");
} function Update () { //更改灯光亮度
if (Input.GetKey(KeyCode.L)) {
directLight.GetComponent(Light).intensity+=0.1;
};
if (Input.GetKey(KeyCode.K)) {
directLight.GetComponent(Light).intensity-=0.1;
};
theTxt.GetComponent(Text).text = directLight.GetComponent(Light).intensity.ToString();
if (Input.GetKey(KeyCode.S)) {
//调用了Cube组件中的go方法
objCube.SendMessage("go");
};
}

7,代码实现第一人称控制器,思路:

  ①新建项目,添加地面Plane,创建3D Object(Capsule) ,添加Cute

  ②给Capsule附加脚本让其能够上下左右移动

  ③把Main Camera的Position调节和Capsule一致、略高,然后把MainCamera作为Capsule的Child Object

  JS 代码:

#pragma strict
@script RequireComponent(CharacterController) var speed:float=6.0;
var jumpspeed:float =8.0;
var gravity:float =1.0;
private var movedirection:Vector3=Vector3.zero;
private var grounded:boolean=false; function FixedUpdate(){
if (grounded){
movedirection=Vector3(Input.GetAxis("Horizontal"),,Input.GetAxis("Vertical")); movedirection=transform.TransformDirection(movedirection);
movedirection*=speed ; if(Input.GetButton("Jump")){
movedirection.y=jumpspeed;
}
}
movedirection.y -= gravity*Time.deltaTime; var controller:CharacterController=GetComponent(CharacterController);
//移动命令 var flags=controller.Move(movedirection*Time.deltaTime);
//CollisionFlags.CollidedBelow 底部发生了碰撞“flags & CollisionFlags.CollidedBelow”返回1
//CollisionFlags.CollidedNone 没发生碰撞“flags & CollisionFlags.CollidedNone”返回1
//CollisionFlags.CollidedSides 四周发生了碰撞“flags & CollisionFlags.CollidedSides”返回1
//CollisionFlags.CollidedAbove 顶端发生了碰撞“flags & CollisionFlags.CollidedAbove”返回1
// 单个& 表示比较两个二进制数值
//位掩码技术
grounded=(flags & CollisionFlags.CollidedBelow)!=;
}

参考 : 

1,Unity3D中MeshRenderer的使用

Unity3D 5.x 简单实例 - 脚本编写的更多相关文章

  1. android Jni NDK开发环境搭建及其简单实例的编写

    android  Jni  NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...

  2. Unity3D 5.x 简单实例 - 孤岛场景搭建

    1,如果我们的Unity 5.X 是从这个地址下载的,安装后不会有资源包,则需要从Unity3D官网下载资源包: Standard Assets (Unity 5.x) 下载 下载后安装后,Unity ...

  3. Unity3D 5.x 简单实例 - 发射炮弹

    1,下载.安装: http://unity3d.com/cn/get-unity/download/archive 建议直接借助 UnityDownloadAssistant 进行安装,根据需要勾选需 ...

  4. Unity3D自定义编辑器简单实例

    MenuItem:在标题栏自定义菜单.需要在Editor文件夹内创建脚本,无需挂载.但是注意其下的函数必须为静态函数. using UnityEngine; using UnityEditor; pu ...

  5. Selenium2学习-018-WebUI自动化实战实例-016-自动化脚本编写过程中的登录验证码问题

    日常的 Web 网站开发的过程中,为提升登录安全或防止用户通过脚本进行黄牛操作(宇宙最贵铁皮天朝魔都的机动车牌照竞拍中),很多网站在登录的时候,添加了验证码验证,而且验证码的实现越来越复杂,对其进行脚 ...

  6. linux脚本之简单实例

    利用脚本计算10的阶乘 简单说明一下: #!/bin/bash说明该shell使用的bash shell程序.这一句不可少for i in `seq 1 10`还可以写成for i in 1 2 3 ...

  7. Wordpress解析系列之PHP编写hook钩子原理简单实例

    Wordpress作为全球应用最广泛的个人博客建站工具,有很多的技术架构值得我们学习推敲.其中,最著名最经典的编码技术架构就是采用了hook的机制. hook翻译成中文是钩子的意思,单独看这个词我们难 ...

  8. BAT脚本编写教程简单入门篇

    BAT脚本编写教程简单入门篇 批处理文件最常用的几个命令: echo表示显示此命令后的字符 echo on  表示在此语句后所有运行的命令都显示命令行本身 echo off 表示在此语句后所有运行的命 ...

  9. selenium从入门到应用 - 2,简单线性脚本的编写

    本系列所有代码 https://github.com/zhangting85/simpleWebtest 本文将介绍一个Java+TestNG+Maven+Selenium的web自动化测试脚本环境下 ...

随机推荐

  1. Tomcat的目录结构

    bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe.tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启动T ...

  2. [Canvas前端游戏开发]——FlappyBird详解

    一直想自己做点小东西,直到最近看了本<HTML5游戏开发>,才了解游戏开发中的一点点入门知识. 本篇就针对学习的几个样例,自己动手实践,做了个FlappyBird,源码共享在度盘 :也可以 ...

  3. java IO流 之 字符流

    字符是我们能读懂的一些文字和符号,但在计算机中存储的却是我们看不懂的byte 字节,那这就存在关于字符编码解码的问题.所以在学习Io流的字符流前我们先了解些关于编码问题. 一.字符集与字符编码 1.什 ...

  4. Uiautomator 2.0之UiWatcher类学习小记

    1. 主要功能 使用此方法可以处理中断问题,从而保证测试用例的正常运行. 2. 相关API API 说明 registerWatcher (String name, UiWatcher watcher ...

  5. java Proxy(代理机制)

    我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习 ...

  6. float实例讲解

    float实例讲解 float是个强大的属性,在实际前端开发过程中,人们经常拿它来进行布局,但有时,使用的不好,也麻烦多多啊. 比如,现在我们要实现一个两列布局,左边的列,宽度固定:右边的列,宽度自动 ...

  7. Excel基础

    一.基础 一个Excel文档称为工作簿(workbook).一个工作簿中可以包含多个工作表(sheet) ctrl+向右箭头  查看最后一列 ctrl+向下箭头 查看最后一行 二.合并单元格 三.等高 ...

  8. 相克军_Oracle体系_随堂笔记014-锁 latch,lock

    1.Oracle锁类型 2.行级锁:DML语句 3.表级锁:TM 4.锁的兼容性 5.加锁语句以及锁的释放 6.锁相关视图 7.死锁 1.Oracle锁类型 锁的作用     latch锁:chain ...

  9. myWaterfall - jQuery瀑布流布局插件

    myWaterfall - jQuery瀑布流布局插件 Demo http://jsfiddle.net/q3011893/p5k2ogy8/embedded/result,html,css,js/ ...

  10. js实现可拖拽的div

    前言 下午忙里偷闲想写一个可拖拽的例子,留在脑海里一直都是三个事件mouseDown,mouseUp,mouseMove, 但从没有动手实践过,今天想起了自己实践了并学习了张鑫旭的demo实现. 学习 ...