
Unity3D
kun1234567
C++.Ogre.OpenGL.ALLEGRO.SDL.Lua.CEGUI.PhysX.Artoolkit.Navi.Jira.Unity3D.Jenkins.wwise.bugly.wetest.prefdog.ue4.
展开
-
获取aos设备支持的opengles版本
一个简单的问题:如何获取aos设备支持的opengles版本?在网上找了各种代码、资料,包括官方文档,均说得不是很完整。特别是官方文档,里面的 context/config/egl/gl对象都是从哪里来的统统没告诉你,简直无敌。最后综合各家,通过真机测试,精简成下列代码:import android.opengl.EGL14;import android.opengl.EGLDisplay;import android.opengl.EGLConfig;import android.o.原创 2020-08-15 16:16:32 · 568 阅读 · 0 评论 -
Unity3D 客户端版程序全屏和窗口化的一个坑
相关类, UnityEngine.Screen1、做实验的时候,使用的是Input.GetKey ,写在Update里,所以随后的很多帧都执行了切换逻辑UnityEngine.Screen.fullScreen 在设置之后,不会立即变更,需要写额外的等待逻辑,确保切换完成2、如果用户屏幕使用显卡工具进行旋转(我就将显示器竖起来使用,向左旋转了90°),全屏的时候还好,在这之后如果再原创 2013-09-02 10:44:31 · 21359 阅读 · 4 评论 -
Unity3D 场景编辑器扩展学习笔记-Editor
PS:适合对UnityEditor类有一些了解的童鞋阅读,我没有完全研究透这套东西,暂时先学到哪写到哪吧。重要的类:Editor,EditorWindow,GUILayout,Handles,Eventusing UnityEditor;[Custom(typeof(TypeName))]class YourEditorClass : Editor该类可以自定义对脚本类原创 2014-02-18 19:46:01 · 32059 阅读 · 4 评论 -
Unity3D 场景编辑器扩展学习笔记-Handles&Event
HandlesNamespace: UnityEditorDescriptionCustom 3D GUI controls and drawing in the scene view.Handles are the 3D controls that Unity uses to manipulate items in the scene view原创 2014-02-19 11:14:28 · 16237 阅读 · 0 评论 -
Unity3D 场景编辑器扩展学习笔记-EditorWindow
今天可以说是有点成果了,可喜可贺~先上图本节内容涉及到的类: EditorWindow, Physics, Handles, Camera, SceneView.Editor类虽然可以使用OnSceneGUI来进行Scene视图里的各种定制操作,但是只能针对特定类型的脚本进行。如果想实现种怪这种编辑器常见需求,实现起来超级别扭。我尝试着基于Editor类来实现这个操作,原创 2014-02-19 18:09:55 · 20871 阅读 · 0 评论 -
自适应分辨率的UI设计规范和制作规范
自适应分辨率的UI设计规范和制作规范基准分辨率 1024*768原创 2014-12-12 01:23:03 · 16667 阅读 · 0 评论 -
页游转手游的一些经验
应朋友之邀,写一点页游转手游的梗概,若有其他未提及之处,还望各位多多赐教!原创 2015-02-12 13:03:04 · 2009 阅读 · 0 评论 -
利用不相交集来生成迷宫(只有关键代码)
using UnityEngine;using System.Collections.Generic;namespace kun.Maze{ public abstract class Cell { public int x; public int y; public bool[] walls; publ原创 2015-09-07 18:16:59 · 1347 阅读 · 0 评论 -
UNITY4升5的一个小坑
【1、下载Unity5.4.x】下载的时候可以选择只下载Unity5和Android发布工具包,省很多时间,其他的可以睡觉的时候下载【2、升级 C# DLL】总体来说就是按照提示进行代码接口替换,如果代码里有中文,可能会出现一些编码问题,这时手动修复一下就好。【3、升级 C++ DLL】C++ DLL在Unity4.7的时候是32bit的,需要升级到64bit,原创 2016-11-28 10:31:34 · 990 阅读 · 0 评论 -
GPU Performance for Game Artists
We rely on artists to produce assets that not only look good but are also efficient to render. For artists, a little knowledge of what goes on under the hood can make a big impact on a game’s framerate. If you’re an artist and want to understand why things转载 2017-03-21 10:46:09 · 2069 阅读 · 0 评论 -
安卓闪退排查笔记
这篇文章记录了我在排查设备问题时遇到的麻烦。持续更新。原创 2017-10-03 22:00:13 · 2018 阅读 · 0 评论 -
newGUI 中如何判断鼠标在某个控件范围内?
newGUI 中如何判断鼠标在某个控件范围内?通过数学计算根据 Canvas 的 RenderMode 不同分为两种情况:1、Screen Space - Overlay(2D游戏或普通APP)public Rect GetSpaceRect(RectTransform rect){ Rect spaceRect = rect.rect; Vector3 spacePo原创 2017-12-01 11:13:51 · 2293 阅读 · 0 评论 -
整理PostEffect流程(随笔)
粗略的随笔,未来会整理成文。起因:希望做屏幕扰动 PostEffect.改动方向:两个相机,第一个相机的渲染结果作为第二个渲染相机的输入参数,以便后续处理。目前的现状: PostEffect 流程是个单件,且和MainCamera绑死了。调查:u3d有一个 PostEffectStack 的实现,里面超级复杂,整合了大量PostEffect,并可以协同工作。大致参考了下结构和流程,就开始动手改项目...原创 2018-03-26 23:09:09 · 1602 阅读 · 0 评论 -
【转】Unity3D Platform Dependent Compilation
原文地址:http://docs.unity3d.com/Documentation/Manual/PlatformDependentCompilation.html这个在Unity Editor自带的Manual 里也有的。Platform Dependent CompilationUnity includes a feature named "Platform Depend转载 2013-07-15 21:06:33 · 2561 阅读 · 1 评论 -
Unity3D-WebPlayer上获取机器性能相关的尝试
今天花了数个小时研究如何获取机器性能相关参数,用来给用户做一个推荐配置选项。首先介绍的是 SystemInfo , 这个是U3D自带类可以获取除了CPU主频以外的绝大多数参数---除了主频。。这没花什么时间,然后笔者很悲剧的花了一整天来找寻获取CPU主频的办法。C#获取主频的方式大抵分为两种:1、计时,然后自己算2、直接查询。我的结论是哪一种都没办法在webplayer原创 2013-04-24 23:28:39 · 8631 阅读 · 2 评论 -
NET探秘:MSIL权威指南学习笔记(速读4-16)
今天非常快速的看完全部章节,感觉对IL已经有了一个非常轮廓的了解,知道如果碰到问题了,需要怎么查阅本书。大致看了一遍,1-3章略微介绍了一些IL片段,让人有些基本认识。4-16章分别介绍了一些专门的知识,分类如下文件格式:第4章:介绍基于CRL的可执行文件结构第5章:元数据表相关结构,这里所有函数都有高级程序语言里的概念所对应的IL语法相关,本章开始,涉及到IL的语法规范了原创 2012-12-29 19:49:47 · 1523 阅读 · 0 评论 -
unity3D中使用协程来做“多次调用一次更新”特性的一个大坑。
有些事情一帧之内只需要做一次,比如收发邮件时,一帧内数据层多次的变化,表现层只需要一次更新。我采用协程做这个事情,为了避免发起多个协程,我记录了一个协程是否发起的变量。但是u3d里的coroutine,在发起的脚本acvited=false后,就不更新了,并且我测试过,再恢复成actived = true,协程依旧不更新了,就像没调用一样。以下是u3d关于协程的调用机制的解释:“在原创 2012-07-05 22:31:26 · 15884 阅读 · 9 评论 -
U3D里UI相关逻辑和文件的组织关系的各种形式的比较
代码和资源的组织关系 我觉得,做UI逻辑的时候,在IDE里将脚本挂载到对象是个错误的方式。因为不利于UI制作人员和程序员的工作分离。不断的import和export package,会让程序员的代码遭遇版本问题如果程序使用了particle class 特性,也会让UI制作人员那边运行不起来 解决方案:本质是使用AddComponent,在运行期组织对象和脚本的原创 2012-06-26 12:22:53 · 4017 阅读 · 0 评论 -
Unity3D显示中文的各种方案的比较
PS:U3D马上就要升级4.0了,说是在9月份,会有新的GUI系统,不知道那时会怎么样,我现在考虑的方案只是针对3.5.x系列的。 UILaber的优势:1、在NGUI的统一处理之下,对layer控制很直接,自然支持遮挡2、支持获取像素级的宽度、设位置3、可以使用8bits的字体贴图,尺寸占得小UILaber的问题:1、NGUI的UILaber不支持TTF字库,只支持字原创 2012-07-17 23:35:17 · 12162 阅读 · 4 评论 -
高富帅的颜色插值方法:在视觉感知线性变化的色彩空间中进行颜色插值
大多数情况下,我们会给材质提供一个Color值,来整体控制对象的颜色。一般都是使用 Color * ( TextureColor + LightColor) 来做。颜色值动画是常规的动画特效之一,最近需要实现一个U3D版本的,查阅了一下和颜色相关的知识后,设计了多种颜色变化的方式. 一般的插值方式: 直接使用RGB插值这个是程序实现最简单的插值方式,但是不够好,因为美术制作的时候其原创 2012-07-26 20:39:56 · 14416 阅读 · 0 评论 -
查C#的内存泄露
以下的文章介绍了一种查C#里内存泄露的方法,很好的文章,就在这里转载了,有兴趣的朋友可以看一下。http://blogs.msdn.com/b/ricom/archive/2004/12/10/279612.aspxTracking down managed memory leaks (how to find a GC leak)ricomricom31原创 2012-08-16 16:07:23 · 5029 阅读 · 0 评论 -
深入剖析U3D的Miss Mono Behaviour问题
我相信u3d稍微大一点的项目,大家都是用unitypackage来传递资源和工作共享的吧?问题是这样的,美术给我们的unitypackage在程序这边导入之后,总是会出现Miss Mono Behaviour的问题,也就是脚本丢失了,不知道大家有没遇到过。出现很多次了,终于在两天前怒了,想要彻底解决这个破事。本文就是解决这个问题时的一些经验,最后发现,在良好的工作规范之下,这个问题几乎不应原创 2012-08-24 22:34:54 · 7007 阅读 · 4 评论 -
Unity代码混淆方案
原文地址:http://hi.baidu.com/thejavafan/item/5bc8d20a23f0f7d8dde5b033Unity代码混淆方案内容提要:Unity引擎下的代码保护,由于Unity引擎的一些特殊性,实行起来较为复杂,在国内外业界并没有现成的方案。笔者通过在《QQ乐团》项目上的实际尝试,得出了一种具体可行,能够有效保护代码逻辑的方案。特此分享给关注Unity引擎的项目,希转载 2012-08-28 21:57:27 · 14749 阅读 · 1 评论 -
NET探秘:MSIL权威指南学习笔记(序)
前段时间在研究U3D的web版混淆,主要是将.unity3d的文件格式破解了,可以提取dll后混淆并打包回去。现在有个查效率的需求,但是u3d自身的profiler除了看起来很炫,几乎没有什么作用。所以想着自己写一套profiler工具,专门用于u3d程序的效率排查。问题列表如下:1、c#不支持控制流离开chunk后临时变量自动销毁(这个是基于c++的profiler最关键的技巧),导原创 2012-12-25 23:35:31 · 1844 阅读 · 0 评论 -
NET探秘:MSIL权威指南学习笔记(1-3)
反编译目标程序集:>ildasm.exe filename.exe /output=123.il重新编译程序集:>ilasm.exe 123.il (会生成123.exe,如果输入是dll,那生成的就是dll)method的标记号没有顺序问题,只和指令的排列顺序有关,比如以下IL代码还是按从上到下的顺序执行:IL_FF00: nopIL_FF00: call Profile原创 2012-12-25 23:41:18 · 1343 阅读 · 0 评论 -
在Unity3D中动态创建对象和创建Prefab原型对象的三种方式
u3d里动态创建对象,需要使用prefab而创建的时候 MonoBehaviour.Instantiate( GameObject orignal) 需要一个作为原型的对象。本文提供三种方式获得prefab对象。 方式一:使用脚本的public字段直接在Project视图里找到做好的prefab,将其拖拽到指定脚本的指定public GameObject 字段。 方式二原创 2012-07-03 15:47:11 · 60531 阅读 · 3 评论