文档章节

【Unity】开发日志3——拖尾渲染 Trial Renderer

ezioreno
 ezioreno
发布于 2016/08/21 23:12
字数 611
阅读 79
收藏 0

【Unity】开发日志3——拖尾渲染  Trial Renderer

前言:

在之前用Unity做绘画的过程中,我们实现了基本的绘画模式,但是有一个很严重的问题就是:我们画出来的都是Sphere,这样子做非常占用内存,这次就主要解决这个问题,我们用Trial Renderer来作我们的笔刷。

 首次接触Trial Renderer可以发现它可以做我们的笔刷,先来创建一个Trial Renderer:

1、 创建一个空的游戏对象  Create Empty,命名为Brush;

2、 给Brush添加组件,点击Brush,在菜单栏中Component > Effects > Trial Renderer;

3、 在Asset中新建一个材质 Create > Material 命名为Brush;

4、 打开Brush的Inspector中的Meterials选项前的小三角,把我们新建的材质Brush拖进去;

5、 在Scene视图中移动Brush我们就可以看见拖尾效果了;

可以看出:只要移动带有Trail Renderer这种Component的游戏对象就会产生这种拖尾的轨迹,这非常适合作为我们的笔刷。

于是我们让它和我们的鼠标同步移动,这里用到新的代码(以往我们都要自己做左边运算,现在发现Unity中有自带的坐标转换函数):

1、 创建一个C#脚本,命名为Brush;

2、 在Update中写入Vector3 Pos = Camera.main.ScreenToWorldPoint (Input.mousePosition);

transform.position = Pos;

3、 保存脚本,之后脚本拖给游戏对象Brush,保存Scene命名为Brush,之后按播放键进行测试;

4、 测试发现结果Brush的Position为(0,1,-10),原因是摄像机的投射方式没有改变,把摄像机的投射方式改为orthographic,之后测试;

5、 现在发现可以在Scene中看到移动轨迹但是再Game视图中无法看见,查看Brush的坐标可以看出原因是:游戏对象Brush的z轴坐标和Main Camera的z轴左边一样,所以Game视图中无法看到,现在添加代码: Pos.z = 0;

测试发现我们可以看到拖尾效果(如图):

 6、 之后添加鼠标左键按钮控制,代码为:

if (Input.GetMouseButton (0)) {
            transform.position = Pos;
        }

测试发现我们实现了,点击鼠标左键画画的功能,但是不能分开画;

 

 

时间问题,所以这节我只能写到这里,希望大家继续关注我的博客,我会找时间上传我的博客。

 

 

 

 

© 著作权归作者所有

ezioreno
粉丝 0
博文 3
码字总数 1985
作品 0
西安
私信 提问
Avue 是一个后台集成解决方案支持SSR(服务端渲染)和SPA(单例页面),

https://gitee.com/smallweigit/avue.git vue只是刚起步,很多功能还在开发中敬请期待...... 简体中文 欢迎加入QQ交流群,互相学习 一键加群: 简介 是一个后台集成解决方案支持SSR(服务端渲...

Smallwei小伟
2018/02/08
0
0
Unity3D学习笔记(二)小地图的制作(UGUI)

文章末尾有小地图制作完成的MiniMapDemo.unitypackage下载地址,使用Unity3d 5.3.4f1制作 一、创建一个Plane和Cube,调整合适位置,再创建一个Camera,重命名为MiniMapCamera,调整摄像机让其...

wty530
2016/04/11
0
0
Avue 1.0 发布了,像 easyUI 一样写 vue

vue1.0发布了,像easyUI一样写vue 欢迎点击演示地址体验 演示地址:http://122.4.205.228:7777——jenkins+docker+git钩子自动部署 码云地址:https://gitee.com/smallweigit/avue github地址:...

avue_smallwei
2018/03/15
11.8K
25
Scene Unity3D笔记(三)

1、游戏对象新建默认位置是Scene视图中心位置坐标;;Component:游戏对象实现其用途的功能件;游戏对象都有Transform组件;给游戏对象添加组件Ctrl+Shift+A; 2、7类组件:空对象添加组件后形...

周志超
2014/07/22
0
0
WebVR开发教程——标准入门

WebVR即web + VR的体验方式,我们可以戴着头显享受沉浸式的网页,新的API标准让我们可以使用js语言来开发。本文将介绍如何快速开发一个WebVR网页,在此之前,我们有必要了解WebVR的体验方式。...

YoneChen
2018/01/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

非递归实现后序遍历二叉树

问题描述 从键盘接受输入先序序列,以二叉链表作为存储结构,建立二叉树(以先序来建立)并对其进行后序遍历,然后将遍历结果打印输出。要求采用非递归方法实现。 解题思路 Push根结点到第一...

niithub
20分钟前
2
0
IDEA 自动删除类中无用的import包

1.手动快捷键 Ctrl + Alt + O 2.配置自动清理 Ctrl + Alt + S 打开设置 然后,进行如下操作:

时刻在奔跑
23分钟前
2
0
cwRsync提示password file must be owned by root when running as root的解决方法

cwRsync提示password file must be owned by root when running as root的解决方法 更新时间:2015年08月30日 23:05:52 投稿:mdxy-dxy 我要评论 今天在配置服务器的时候,用了rsync4.10版本...

rootliu
28分钟前
1
0
Java 交换两个参数

目前有一个小需求: 定义一个函数,交换两个值。于是,有人就写了这样一个函数。 public class exchange_01 { public static void main(String[] args) { // TODO Auto-gen...

hellation_
37分钟前
1
0
ExoPlayer简单使用

一、介绍 ExoPlayer是google开源的应用级媒体播放器项目,该开源项目包含ExoPlayer库和演示demo,github地址:https://github.com/google/ExoPlayer。 二、概述 ExoPlayer库的核心是ExoPlay...

零点B5
46分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部