Unity 琐碎(4) 可视化辅助调试Giamos】的更多相关文章

Gizmos 类 可以在代码中绘制一些输出结果或者中间输出内容,比如计算后的包围盒等等 类变量 方法 作用 color 控制输出颜色 matrix Set the gizmo matrix used to draw all gizmos. DrawCube 绘制立方体 DrawWireCube 线框立方体 DrawLine 绘制直线 DrawMesh 绘制Mesh DrawWireMesh 线框Mesh DrawRay 方向射线 DrawSphere DrawWireSphere 绘制方式 Al…
Shader的调试有点蛋疼,最近在测试Image Effect中深度还原时,不知道输出的结论是否正确,后面就采取了这种策略.在物体上世界坐标位转换区间到[0,1],然后作为颜色进行输出.然后Image Effect shader中也采用类似的方式进行输出,通过颜色进行比较.需要注意的是:颜色区间,比如将世界坐标转换到颜色空间,可以按法线的方式先归一化转换到[-1,1],再转换到[0,1]. 类似的做法可以参考<Shader入门>第五章,shader源码,并且提供了一个工具,用于颜色抓取. Sh…
Gizmos   类 Gizmos用于场景中给出一个可视化的调试或辅助设置. 所有的Gizmos绘制都必须在脚本的OnDrawGizmos或OnDrawGizmosSelected函数中完成. OnDrawGizmos在每一帧都被调用.所有在OnDrawGizmos内部渲染的Gizmos都是可见的. OnDrawGizmosSelected尽在脚本所附加的物体被选中时调用. 类变量 ◆ static var color : Color    //    描述:设置下次绘制的Gizmos的颜色.…
YUV422蓝屏显示输出功能辅助调试 YUV422有YUYV,YVYU,UYVY,VYUY四种,以下笔者就就以UYVY为例介绍一下数据构成.因为常常要跟视频输入打交道,所以YUV422这种常见的视频信号是常常碰到的.有时候我们调试一个模块输出YUV422,然后再显示出来.非常多时候,可能没法准确推断你那个模块是不是已经正常跑起来了,跑起来来的情况下,是不是真的有数据输出,有了数据输出后来的数据究竟对不正确. 带着这些疑问,当然有非常多对策,笔者就先把这个事情一分为二,以YUV422数据为界限分两…
Android远程桌面助手的中文版——安卓投屏助手正式上线.安卓投屏和远程控制的软件其实已经非常多了,如Vysor.Total Control.Mobizen.ApowerMirror.TeamViewer.向日葵远程控制手机软件等等,为啥还要再搞个安卓投屏助手出来?原因无它,称手的工具可以提高工作的效率,主要体现在今天要介绍的辅助调试功能这一块.Android开发和测试人员每天要输入太多次的adb命令,而adb命令很多,有的又很长,不容易记,敲起来也麻烦.所以辅助调试功能其一就是要搞定adb命…
1,程序异常崩溃后用windbg辅助调试解决的经验  状况:我的程序调用别人的库做 文件写入工作. 在这一过程中出现异常,程序崩溃. 经反复检查,认为自己的程序没有错,但无法判断在别人库里哪里有错. 使用windbg绑定程序进程进行调试,可以在发生异常时候,获取函数调用顺序,进而知道在哪个函数出了异常. 由截图可见,在我的程序函数CEncryptionUtils::write_user_certs调用别人的MWHwMan库的SDFP_Close函数中调用另一个人的sdfp_lib库中的SD_Sa…
unity手机游戏应用程序调试控制台Lunar Mobile Console - PRO 1.5.5 High-performance Unity iOS/Android console built with native platform UI. Platform Support:iOS: iOS 9 or later.Android: API level 14 or later Key Benefits Native C/Objective-C/Java code with a low me…
所有gizmo绘制需要在脚本的OnDrawGizmos或OnDrawGizmosSelected里函数完成. OnDrawGizmos在每帧调用.所有在OnDrawGizmos中渲染的gizmos都是可见的. OnDrawGizmosSelected仅在脚本附加的物体被选择时被调用. Gizmos.DrawLine 从obj1到obj2之间画一条绿色的线. using UnityEngine; using System.Collections; public class DrawLineText…
0x00 前言 工作的过程中,常常会发现有小伙伴对Unity的Profiler提供的内存数据与某些原生平台Profiler工具,例如iOS系统和Xcode,所提供的内存数据有差异而感到好奇.而且大家对如何解读原生平台工具的数据更加感兴趣,同样例如iOS系统和Xcode.最近正好看了一个来自Unite Copenhagen题为 Developing and optimizing a procedural game | The Elder Scrolls Blades - Unite Copenha…
大家可以从这下载最新版的unity vs. UnityVs1.81下载  1.   安装unity vs.首先我们打开我们下载的unity vs.然后就会看见里面有3个文件,我们双击UnityVS 2013-1.8.1.msi.进行安装,在其过程狂点击下一步就可以,直到点击finish.安装完成. 2.      我们先找到你安装visual studio 2012或者visual studio 2013的目录.(****\Microsoft Visual Studio12.0\Common7\…
前言 接我之前的文章,讲到使用IntelliJ IDEA(做为Lua的编辑器)+EmmlyLua(插件),当然EmmlyLua也提供调试功能的. Lua代码提示和方法跳转 在Lua中提示UnityEngine.dll的方法 PS:同样的配置16G DDR4+128G SSD,在WIN10和WIN7上表现差异很大,WIN10调试很流畅,WIN7调试特别卡且容易让Unity挂掉,所以对于硬件高配置推荐大家使用WIN10系统. 调试步骤 1.安装Emmly后,在项目Lua代码的根目录,用IDEA新建一…
转载自:http://dong2008hong.blog.163.com/blog/static/4696882720140293549365/ 大家可以从这下载最新版的unity vs. UnityVs1.81下载    1.   安装unity vs.首先我们打开我们下载的unity vs.然后就会看见里面有3个文件,我们双击UnityVS 2013-1.8.1.msi.进行安装,在其过程狂点击下一步就可以,直到点击finish.安装完成.  2.      我们先找到你安装visual s…
问题 最近处理unity资源打包问题时候经常遇到的一个问题就是平台切换和Bundle编译.一般情况下,平台转换我需要依赖Cache Serbver加快转换速度,但是在Build Bundle的时候我又不想打开Cache Server,因为会非常非常慢(bundle文件超过2000个).每次都记得这个操作不现实,所以就考虑是否可以在平时打开Cache Server,Build Bundle时关闭. Unity 自身Editor没提供这个方面的API参考钱康来C#反射--掀起Unity Editor…
感觉使用Unity之后总能看到各种各样解决混排的方案,只能说明Unity不够体恤下情啊.这篇文章主要讲一下个人在使用过程中方案选择和优化过程,已做记录.顺便提下,开源很多意味着坑,还是要开实际需求. 1. 方案选择 1 TextMeshPro Unity 最近公布收购了TextMeshPro并且免费开源给大家使用,估计还需要几个小版本才会完全融合到Unity中或者保持现在的状态.TextMeshPro支持效果丰富,兼容现在UI层级等,性能也可以满足移动端,但是很纠结的是: 现在的版本生成的字体库…
using UnityEngine; using System.Collections; using System; public class LearnGrazio : MonoBehaviour { public Transform m_Transform; public float m_Radius = 1; // 圆环的半径 public float m_Theta = 0.1f; // 值越低圆环越平滑 public Color m_Color = Color.green; // 线框…
http://blog.sina.com.cn/s/blog_6ae8b50d0102w7tw.html…
今天在写编辑器面板的时候,突然发现如果面板参数变化的时候,不能实时修改表现效果(参数没有生效). public int monsterCount ; void Awake() { monsterCount = Mathf.Clamp(monsterCount, 0, 1000); } 就像上面的代码,只在启动的时候的会修改变量的数值,运行中修改编辑器中参数不会再去执行Awake的.... 解决思路 (1) MonoBehavior.OnValidate() his function is cal…
安装链接: http://docs.redisdesktop.com/en/latest/quick-start/ 图标…
Unity的两种调试方法 1.Debug.Log()输出语句调试,平时经常用这个 2.把MonoDevelop和Unity进行连接后断点调试 先把编辑器选择为MonoDevelop,Edit---->Preferences 调试前的连接----方法1: 用MonoDevelop打开一个要调试的脚本,然后关闭Unity编辑器,回到MonoDevelop按F5或者点击Debug按钮,这时候,会打开一个新的Unity3D界面,这时候就连接好了. 调试前的连接----方法2: 1.无需关闭Unity编辑…
今天get到一个在linux下gdb调试程序的技巧和大家分享一下!平时我们利用gcc进行编程,进行程序调试时,观察程序的跳转等不是这么直观.都是入下的界面! 但是如果我们在编译连接时上加了-g命令生成的可执行文件,用gdb -tui -q p2psrv(要debug的命令),就可以进入一个类似的可视化的调试界面. 之后相信一些基本的gdb操作大家都应该清楚. backtrace:查看各级函数调用及参数 finish:连续运行到当前函数返回为止,然后停下来等待命令 frame(或f) 帧编号 :选…
前言 断点调试在编程调试过程中是一项非常重要的功能,而Unity自带的脚本编辑器MonoDevelop需要进行一些设置才能使用断点调试的功能,今天我们就来看看如何使用MonoDevelop进行断点调试. [版本环境]Unity版本:5.2.2 你将学到什么? 如何设置Unity的默认脚本编辑器 如何连接MonoDevelop和Unity进程进行调试 一.设置Unity的默认脚本编辑器 如果没有特别修改过Unity的脚本编辑器的朋友,可以跳过这一段 图一:打开Preferences窗口 图二:修改…
1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的)的时间远多于写代码的时间.通常,debug是指发现缺陷并改正的过程.修正缺陷紧随debug之后,或者说二者是相关的.如果代码中存在缺陷,我们首先要识别造成缺陷的根本原因(root cause),这个过程就称作调试(debugging).找到根本原因后,就可以修正缺陷. 那么如何调试代码呢?Visual Studio提供了很多用于调试的工具.有时调试需…
1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的)的时间远多于写代码的时间.通常,debug是指发现缺陷并改正的过程.修正缺陷紧随debug之后,或者说二者是相关的.如果代码中存在缺陷,我们首先要识别造成缺陷的根本原因(root cause),这个过程就称作调试(debugging).找到根本原因后,就可以修正缺陷. 那么如何调试代码呢?Visual Studio提供了很多用于调试的工具.有时调试需…
1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的) 的时间远多于写代码的时间.通常,debug是指发现缺陷并改正的过程.修正缺陷紧随debug之后,或者说二者是相关的.如果代码中存在缺陷,我们首先 要识别造成缺陷的根本原因(root cause),这个过程就称作调试(debugging).找到根本原因后,就可以修正缺陷. 那么如何调试代码呢?Visual Studio提供了很多用于调试的工具.有时调…
https://developer.microsoft.com/en-us/windows/holographic/install_the_tools 导读:开发者们在陆续收到HoloLens开发者版的同时,也都着手了HoloLens应用的开发工作.本文作者从空间映射.场景匹配.自然交互等核心特性开始,以实践详解了如何使用Unity引擎开发一个简单的HoloLens应用,并对自己的开发经验进行总结和分享. HoloLens概述 经历数个月的期待与等待,笔者终于拿到了预订的HoloLens开发者版…
一个顶点/片元 着色器的结构大概如下: Shader "MyShaderName" { Properties { //属性 } SubShader { //针对显卡A的SubShader Pass { //设置渲染状态和标签 //开始CG代码片段 CGPROGRAM //该代码的预编译指令,例如: #pragma vertex vert #pragma fragment frag //CG代码写在这儿 ENDCG //其他设置 } } SubShader { //针对显卡B的SubSh…
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > .katex-html { display: block; } .katex-display > .katex > .katex-html > .tag { position: absolute; right: 0px; } .katex { font: 1.21em/1.2 KaTeX_M…
新学习一种技术,肯定会遇到很多坑,我们需要找到这些坑,弄清楚这些坑出现的原因和其中的原理.这种操作就叫做调试. 程序调试的方法和工具多种多样,在这里我总结一下我在学习nodejs的过程中,学到的和用到的调试方法. log 在JavaScript代码中直接console.log,可以在控制台中打印信息.但是这样的功能太单调,项目中模块很多,功能繁杂,如果没有一个约定好的console.log方法,很容易就导致打印的信息十分杂乱,可读性很差. nodejs有一个debug模块,提供: 定义log模块…
当我们使用Visual Studio调试的时候,通常我们会选择VS自带的ASP.NET Developerment Server(也是默认选项),当第一次调试的时候(按F5或Ctrl+F5不调试直接打开),Developerment Server会自动分配一个未被占用的端口号.     这样做在大多数情况下不会有啥问题,但Developerment Server毕竟不是IIS,有一些操作无法达到和IIS一样的效果,譬如当我们使用某些方法获取客户端以及服务器IP的时候,使用 Developerme…
http://blog.chinaunix.net/uid-10106787-id-2985587.html 在C语言程序设计中,常会出现各种各样的bug:段错误.参数异常等等.我们需要尽快定位错误,输出异常信息,出错位置及调用层次等,这对于解决bug问题是非常方便的,所以设计了如下调试接口. 调试级别:共有三级,不同的级别对于错误采取不同的处理方法,如异常退出还是函数返回还是仅仅输出错误信息,调试级别越高,给出的错误信息越详细. 最高调试级别assert,当断言失效时打印最详细的出错信息,包括…