- 博客(25)
- 资源 (2)
- 收藏
- 关注
转载 关于C#中的弱引用
一:什么是弱引用 了解弱引用之前,先了解一下什么是强引用 例如 : Object obj=new Object(); 就是一个强引用,内存分配一份空间给用以存储Object数据,这块内存有一个首地址,也就是obj所保存的数据,内存分配的空间中不仅仅保存着Object对象信息,还保存着自己(Object本身)被引用的次数。 当一个对象被强引用的形式创建的时候,本身被
2015-07-13 11:43:55 469
转载 untiy3d 热更新 脚本 动态更新 c#lite 图形学
以下文章转载自图形学大神李总老师的博客.C#Lite是李总自己做的一个开源项目,旨在解决因u3d在ios平台不能动态更新以及lua脚本在u3d上效率低下的问题.作为4年前就给李总当小弟,被李总狂虐的我一定要帮他做做宣传.有需要的朋友可以去http://crazylights.cnblogs.com/观看持续更新的帖子.貌似最近他开始讲些图形学的入门捷径.有兴趣并且不是小白的
2015-07-10 18:10:57 882
转载 Unity3d热更新全书-加载(一)从AssetBundle说起
Unity3D动态下载资源,有没有解?有,AssetBundle就是通用解,任何一本书都会花大幅篇章来介绍AssetBundle.我们也来说说AssetBundle我们试全面的分析一下Unity3D提供的资源加载机制1.Resources//内嵌资源,使用方法Resources.Load,可以加载任意种类的资源,不能动态修改,卒。2.StreamingAssets//随
2015-07-10 18:10:08 528
转载 MonoBehaviour生命周期讲解
最先执行的方法是Awake,这是生命周期的开始,用于进行激活时的初始化代码,一般可以在这个地方将当前脚本禁用:this.enable=false,如果这样做了,则会直接跳转到OnDisable方法执行一次,然后其它的任何方法,都将不再被执行。 如果当前脚本处于可用状态,则正常的执行顺序是继续向下执行OnEnable,当然我们可以在另外一个脚本中实现这个脚本组件的启动:this.enab=tru
2015-07-10 15:51:26 769
转载 Unity3d之MonoBehaviour的可重写函数整理
最近在学习Unity3d的知识.虽然有很多资料都有记录了,可是我为了以后自己复习的时候方便就记录下来吧!下面的这些函数在Unity3d程序开发中具有很重要的作用.Update 当MonoBehaviour启用时,其Update在每一帧被调用。LateUpdate当Behaviour启用时,其LateUpdate在每一帧被调用。FixedUpdate 当MonoBehavio
2015-07-10 13:06:38 1017
转载 NGUI之UICamera控制触摸,鼠标事件
1. UICamera 功能介绍主要包括UI事件的监听,分发,覆盖范围为此Camera渲染的所有GameObject。事件源包括:鼠标,触摸,键盘,手柄。事件包括:悬停,按下/抬起,选中/取消选中,点击,双击,拖拽,释放,文本输入,Tips显示,滚轮滑动,键盘输入。 2. UICamera 实现流程(1)属性 Event Type:包
2015-07-08 12:57:58 665
转载 Directional Shadow Details 平行光阴影细节
This page explains shadows from Directional lights in detail.此页面详细介绍了平行光阴影。Directional lights are mostly used as a key light - sunlight or moonlight - in an outdoor game. Viewing distances can
2015-07-08 11:19:55 522
转载 有关Unity3D的OnRenderImage()和Blit()的一些问题
大家好!本人最近在使用Unity3D做master阶段的图形学实验平台。在实验过程中会频繁的对多个不同的RenderTexture(以下简称RT)进行一些运算,因此自然会用到Blit这个函数。在实验中,我们遇到了一些非常神奇的问题,希望能跟大家一起讨论一下。Blit(src,dest,mat,pass)函数的作用,按照Unity官方API的说法是将src这个RT用mat这个材质中的某个pass
2015-07-07 15:13:36 20659 5
转载 四元数与欧拉角之间的转换
在3D图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点。本文主要归纳了两种表达方式的转换,计算公式采用3D笛卡尔坐标系: 图1 3D Cartesian coordinate System (from wikipedia) 定义分别为绕Z轴、Y轴、X轴的旋转角度,如果用Tait-Bryan angle表示,分别为Yaw、P
2015-07-07 14:31:07 3088
转载 Unity3D调用自己封装的dll
之前总感觉会封装dll组件的都是大牛级别的程序员做的事情,然后供给菜鸟级别的调用。感觉为了保护自己的源码不会被他人知道,然后就封装一个dll供人家调用,那样就觉得很牛, 今天我也尝试摸索了一下,感觉也就那么回事,但只是简单的测试而已,其实会写封装的,封装的好的还是很牛的,哈哈,那让我们也来假装“牛”一次吧!首先要申明的是,unity3d支持C#语言,但只有pro版本才支持.net2.0,其
2015-07-07 11:26:53 868
转载 Unity3D自带例子AngryBots的分析
研究一下Unity3d自带的AngryBots项目,了解基本的游戏运行机制: 1. 人物的动作控制逻辑 ***Player对象*** [外形] Player对象里有一个对象具有Skinned Mesh Renderer组件,该组件使用的Mesh名为main_player_lorez。 类似的还有表达武器的,名为main_weapon001的GameObject。 [操作]: (Inpu
2015-07-06 18:11:18 1134
转载 Gizmos画圆(原创)
Gizmos是场景视图里的一个可视化调试工具。在做项目过程中,我们经常会用到它,例如:绘制一条射线等。Unity3D 4.2版本截至,目前只提供了绘制射线,线段,网格球体,实体球体,网格立方体,实体立方体,图标,GUI纹理,以及摄像机线框。如果需要绘制一个圆环还需要自己写代码。using UnityEngine;using System;public class
2015-07-06 16:05:37 409
转载 JS设计模式一:单例模式
单例模式 单例模式也称作为单子模式,更多的也叫做单体模式。为软件设计中较为简单但是最为常用的一种设计模式。 下面是维基百科对单例模式的介绍: 在应用单例模式时,生成单例的类必须保证只有一个实例的存在,很多时候整个系统只需要拥有一个全局对象,才有利于协调系统整体的行为。比如在整个系统的配置文件中,配置数据有一个单例对象进行统一读取和修
2015-07-03 17:20:04 347
转载 Unity3D开发者常见问题20条
1:天空盒有接缝怎么解决?答:在贴图导入设置里设置Wrap Mode为"Clamp".2:DDS格式怎么不显示?答:Unity不支持DDS格式,Unity会将除DDS外的其他格式图片具有为DDS同样的优化.3:Unity如何动态载入外部模型等文件?答:可以使用AssetBundle:http://unity3d.com/support/documentation/Scr
2015-07-03 17:11:25 488
转载 射线碰撞检测+LayerMask的使用
射线:射线是3D世界中一个点向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将停止发射 。用途:在unity中射线应用范围比较广, 多用于碰撞检测(如:子弹飞行是否击中目标)、角色移动 等。相关API:1、Ray Camera.main.ScreenPointToRay(Vector3 pos) 返回一条射线Ray从摄像机到屏幕指定一个点
2015-07-03 17:02:57 524
转载 关于Unity3d中的LayerMask使用
最近看别人写的Demo,里面这个Linecast字段的LayerMask参数看了半天也没看懂void Update() { // The player is grounded if a linecast to the groundcheck position hits anything on the ground layer. grounded
2015-07-03 16:50:27 927
转载 unity的c#脚本gameObject.SendMessage(string,Object)怎么用求举例
实际上这个函数的目的就是为了调用其他脚本中的函数,也就是交互目的他会在指定的gameobject上所依附的脚本中针对函数名"string"去检索. 找到后调用并传送参数object.(参数可以为空)加入你场景里面有个cube1,cube2你添加了一个脚本C1.cs 在cube1上C2.cs在cube2上C1中有函数 void.check(){};那么在C2中想要使用C1的这
2015-07-03 16:16:35 1091
转载 Unity3D 射线指定层获取GameObject 注意
这一篇是纯技术讨论,看过我前面文章的童鞋应该清楚,我的奔跑是靠鼠标响应的,鼠标点到哪就跑到哪,后来又有了界面,麻烦就来了,我的界面竟然能点 穿,我不希望点界面的时候还能点到界面后面的地面上,角色傻不拉几的往那跑,那肿么办呢,总不能每次点击都要判断点击的物体名称吧,那界面多了会累死的, 好在我们有标签和层这两个神器,所以我这里介绍两种方案,都能达到效果。方案一:利用标签(Tag)
2015-07-03 12:40:39 1750
转载 [Unity3D]Script 脚本所有编译器属性详解
Script属性是基于IDE的一系列编译器属性JS中用@script 属性方法()访问,c#中用[属性方法()]访问。一共就只有9种属性访问方式:AddComponentMenu 在Component菜单中添加新的菜单项ContextMenu 在当前脚本的组件中添加右键菜单内容ExecuteInEditMode 让当前脚本可以在运行模式中实时更新修改
2015-07-03 10:44:24 485
转载 Time.realtimeSinceStartup 自游戏开始实时时间
static var realtimeSinceStartup : float Description描述The real time in seconds since the game started (Read Only).以秒计,自游戏开始的实时时间(只读)。In almost all cases you can and should use Time.time
2015-07-03 10:35:34 4930
原创 关于Dynamic和Static
含有Collider和RigidBody的GameObject, Unity视之为Dynamic含有Collider的GameObject, Unity视之为Static 如果Static的物体发生位移上的变化,Unity每一帧都会去重新缓存Static物体的Collider状态,这会消耗资源 所以只含有Collider的物体,就不要让他发生位置上的移动。或
2015-07-02 18:04:04 972
转载 Unity3D脚本 #pragma strict是什么
#pragma strict#pragma implicit#pragma downcast这些都是什么作用?经常用到的第一个#pragma strict严谨编译模式性能优化:JS中强制使用静态类型,脚本顶部添加#pragma strict。然后,unity将在脚本中禁用动态类型,强制使用静态类型,如果一个类型未知。Unity将报告编译错误。那么在这种情况下
2015-07-02 17:26:44 2070
转载 unity——Rigidbody类
游戏对象添加Rigidbody组件后即具备物理属性,当其受力和扭矩影响时可产生更加真实的行为。当操作刚体参数的时候,你应该在FixedUpdate 函数中使用它,物理模拟以离散的时间步执行。FixedUpdate函数在每一步之前被立即调用。使用刚体时应注意,父物体和子物体不应同时具有刚体,也 不应该缩放刚体的父级。 变量:var velocity : Vector3
2015-07-02 17:11:58 1622
转载 Rigidbody.AddExplosionForce 添加爆炸力
应用一个力到刚体来模拟爆炸效果。爆炸力将随着到刚体的距离线形衰减。这个函数也对布娃娃有很好的作用。如果radius为0,将应用全部的力不论position距离刚体多远。upwardModifier就像从物体下方施加力力。这个是非常有用的,因为爆炸将向上抛物体而不是将它们推向一边,这个看起来非常的酷。为2的值将应用一个力就好象在物体2米以下施加力,然而不会改变实际的爆炸位置。 explosi
2015-07-02 16:45:31 3044 1
转载 Unity3D总结:关于射线碰撞
方法一:Physics.Raycast 光线投射1.static function Raycast (origin : Vector3, direction : Vector3, distance : float = Mathf.Infinity, layerMask : int = kDefaultRaycastLayers) : bool一个静态的发射射线的方法,在场景中投
2015-07-02 15:39:23 496
URP Debug Views 1.0.4.zip
2021-07-23
房燕良-虚幻4渲染系统架构解析
2019-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人