学习u3d笔记(一) OnGui实现动态创建cube组件 并按钮控制cube旋转 停止 销毁
2017-02-07 11:01
826 查看
因在ongui函数中button方法 按钮 只有按一下 旋转一下 或者 RepeatButton方法 按下不停旋转 按钮一松开就停止不方便
在网上找了半天也没找到想要实现这个功能的源码
所以本人在下列代码中 实现按下不停旋转的功能 记录下来 供后期学习
using UnityEngine;
using System.Collections;
public class menu : MonoBehaviour {
GameObject cube0;
bool RoationOnly;
int i=1;
void OnGUI(){
if (GUILayout.Button("创建cube", GUILayout.Height (50), GUILayout.Width (100))) {
cube0=GameObject.CreatePrimitive(PrimitiveType.Cube);//按钮控制建立cube对象
}
if (GUILayout.Button ("旋转cube", GUILayout.Height (50), GUILayout.Width (100))) {
if(i%2!=0){ //按钮控制 是否旋转 并计数实现可开关
RoationOnly=true;
}else{
RoationOnly=false;
}
i++;
}
if (GUILayout.Button ("销毁", GUILayout.Height (50), GUILayout.Width (100))) {
Destroy(cube0);
}
}
void Roation()//建立旋转函数
{
if (RoationOnly)//设置旋转控制 为真旋转 为假停止
{
cube0.transform.Rotate(0,50*Time.deltaTime,0);
}
}
void Update(){
Roation ();//调用旋转函数 让物体在update中不停旋转
}
}
在网上找了半天也没找到想要实现这个功能的源码
所以本人在下列代码中 实现按下不停旋转的功能 记录下来 供后期学习
using UnityEngine;
using System.Collections;
public class menu : MonoBehaviour {
GameObject cube0;
bool RoationOnly;
int i=1;
void OnGUI(){
if (GUILayout.Button("创建cube", GUILayout.Height (50), GUILayout.Width (100))) {
cube0=GameObject.CreatePrimitive(PrimitiveType.Cube);//按钮控制建立cube对象
}
if (GUILayout.Button ("旋转cube", GUILayout.Height (50), GUILayout.Width (100))) {
if(i%2!=0){ //按钮控制 是否旋转 并计数实现可开关
RoationOnly=true;
}else{
RoationOnly=false;
}
i++;
}
if (GUILayout.Button ("销毁", GUILayout.Height (50), GUILayout.Width (100))) {
Destroy(cube0);
}
}
void Roation()//建立旋转函数
{
if (RoationOnly)//设置旋转控制 为真旋转 为假停止
{
cube0.transform.Rotate(0,50*Time.deltaTime,0);
}
}
void Update(){
Roation ();//调用旋转函数 让物体在update中不停旋转
}
}
相关文章推荐
- UE4学习笔记-人物旋转控制(c++实现)
- 动态创建一个CButton按钮并实现其ON_BN_CLICKED消息
- 【Unity3D API的学习与使用】Unity实现GUI组件的位移、缩放和旋转
- JqGrid 学习笔记---实现在jqGrid表格上动态的加行、删行,最后点击“保存”按钮,与后台交互,保存数据
- 动态创建一个CButton按钮并实现其ON_BN_CLICKED消息
- [C++学习笔记14]动态创建对象(定义静态方法实现在map查找具体类名对应的创建函数,并返回函数指针,map真是一个万能类)good
- angular学习总结十一——动态创建组件并实现交互二
- angular学习总结十——动态创建组件并实现交互一
- 学习u3d笔记(二) 创建灯光组件
- aswing学习笔记4-通过调用面板中的按钮实现主界面动态切换皮肤的问题!
- 强大的DataGrid组件[4]_实现CURD[上]——Silverlight学习笔记[12]
- 强大的DataGrid组件[5]_实现CURD[下]——Silverlight学习笔记[13]
- 有关DataForm组件的研究_基础知识和实现服务端批量CURD——Silverlight学习笔记[23]
- 创建扩展组件学习笔记---创建高级MXML组件
- 强大的DataGrid组件[8]_内嵌ComboBox动态数据联动——Silverlight学习笔记[16]
- 转:C++动态内存创建与内存管理学习笔记[2]
- C语言实现线性结构创建动态链表的学习心得(一)
- 创建扩展组件学习笔记---创建简单MXML组件
- BCB中实现动态创建组件[ch_builder(原作)]
- python学习笔记2-强大的动态创建