unity 代码运行时间 和 反射的使用

本文展示了如何在Unity中使用System.Diagnostics.Stopwatch来测量代码执行时间,并结合反射进行方法调用。通过Stopwatch的Start、Stop方法记录代码运行的毫秒数,再转换为小时、分钟、秒等单位。同时,演示了如何利用反射遍历类的静态和实例方法,并执行特定开头的方法。
摘要由CSDN通过智能技术生成
https://msdn.microsoft.com/zh-cn/library/vstudio/system.diagnostics.stopwatch(v=vs.100).aspx
 
 
 
 
 
using UnityEngine;
using System.Collections;
using System.Reflection;
using System;

public class ReflTestDemo : MonoBehaviour {
  

	// Use this for initialization
	void Start () {
  

		int start = System.Environment.TickCount; 
		fun ();
		int end = System.Environment.TickCount; 
		
		Debug.Log("strat - end :" + (end - start));//单位毫秒

		/*
		    Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。
		    在典型的 Stopwatch 方案中,先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性检查运行时间。
			Stopwatch 实例或者在运行,或者已停止;使用 IsRunning 可以确定 Stopwatch 的当前状态。
			使用 Start 可以开始测量运行时间;使用 Stop 可以停止测量运行时间。
			通过属性 Elapsed、ElapsedMilliseconds 或 ElapsedTicks 查询运行时间值。 
			当实例正在运行或已停止时,可以查询运行时间属性。
			运行时间属性在 Stopwatch 运行期间稳固递增;在该实例停止时保持不变。
			默认情况下,Stopwatch 实例的运行时间值相当于所有测量的时间间隔的总和。
			
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Mirror-BumpSpec.shader 实时镜面反射shader 可以配合法线贴图一起用 适用于平面物体 Mirror-AlphaBumpSpec.shader 实时镜面发射、透明材质,可以同时反射和透明效果,也可以配合法线贴图,适用于平面物体 Mirror-AlphaSpecSphere.shader 与上面材质相同,适用于球面物体,不能使用法线贴图 使用很简单,就几个参数,具体效果要慢慢调节,简单解说几个关键参数: Main Material Blend Level:主材质的混合浓度 Bump Rate:法线贴图强度 Reflection Rate 反射强度 Reflective Color 反射颜色 Reflective Distortion 反射图受法线影响强度 Transparency 同时透明、反射的材质,调节透明反射混合的比例 ,0是全反射 1是全透明 Distortion 反射、透明受法线影响的强度 另外每个shader都有个自动的贴图是不需要设置的,由脚本自动设置 Mirror脚本参数: Disable Pixel Lights 禁用Pixel Lights,对应unity摄像机的这个设置 Texture Size 反射贴图精度 缺省是256 如果觉得反射很模糊直接把这个加大就行了 即时生效 所以不要设太大了,1024足以应付绝大多数要求了。 Is Flat Mirror:如果是平面反射物体就勾上,球体点掉,材质也要选择相应的 Reflect Layer 反射的culling mask,可以屏蔽掉指定的层 shader和脚本都是参考unity的water效果,脚本基本就是water包里反射脚本的简化版 由于只是模拟,并不是真正的光线跟踪效果,所以折射效果并不准确,但是基本能满足观感。 注意:目前只适用于forward 渲染,Deferred下会有贴图倒置、光线暗淡的问题 尽量避免反射物体互相反射,消耗巨大而且效果不准确 实时反射本身也开销极大,尽量不要滥用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值