Unity3D 点击事件绑定(四):模式比较

优劣比较 以我个人的经验来看,绝大多数程序员喜欢用代码添加的方式。 一般来讲,程序员不会轻易动别人的代码,但预设就很可能被其他人更改。当Bug出现时,不使用代码编写绑定,开发人员心里就很没底,无法确认是否是自己的原因。 我个人觉得如果有很好的框架支撑,编辑器设置绑定的方式也是可取 […]


Unity3D 点击事件绑定(三):代码绑定

代码添加的方式要简单的多,打开TestEvent脚本,在类中添加如下代码:

然后在Inspector中将三个控件分别拖动到脚本的对应位置上即可。


Unity3D 点击事件绑定(二):组件中添加逻辑

在Inspector界面中,可以直接在组件中通过拖拽的方式完成绑定。我们以Button控件为例,演示如何操作。 首先创建一个空的GameObject,命名为MyTrigger,在它上面挂载刚刚创建的TestEvent脚本。 完成以上步骤后,在Hierarchy面板中选中Butto […]


Unity3D 点击事件绑定(一):环境配置

在面临一个新问题时,我们通常会在一个独立的场景中搭建测试环境,来快速验证我们的逻辑是否正确。 在这个例子中,我们要在界面中创建三个控件,并摆放到屏幕的中心。创建方法是右键添加各种控件,相信大家都知道如何操作。如果不熟悉,也可以通过网络很容易的查到。创建好的界面大概如下图所示: 接 […]


《游戏架构:核心技术与面试精粹》勘误

《游戏架构:核心技术与面试精粹》的勘误页,可以在本页面下留言,我会定期将内容整理到正文中。 P8: 监视器(monito) -> monitor P120: GPU就是做这些准备工作的-> CPU就是做这些准备工作的 P137 点乘 ( Cross ) 又叫外积 -> 叉乘(Cr […]


逻辑与思辨

破出对方逻辑的步骤 内在逻辑更重要,逻辑对了,语言表述不会太差。 用论断式概括出对方的逻辑 找到对方逻辑的盲点 通过盲点否定对方逻辑 思想误区 掌握运用类比论证 最常见的论证方式,标志词:就好比… 破力核心:因为p->q,所以a->b。中间存在的逻辑断档 破力方式: […]


OpenGL(二十) 投影 的shader实现

简单说来 投影 是将一个纹理贴到另一个模型或图片上的技术。在现实生活中,皮影戏就是根据这个原理产生的。 原理 参照皮影戏,我们需要一个投射器,一个采样图和一个成像模型。这样一想,跟OpenGL(二十)阴影 通过ShadowMap的shader实现中提到的投影模型是差不多的。不同之 […]


OpenGL(十九) 阴影 通过ShadowMap的shader实现

阴影 可以使角色与地面的关系更加明确。本文主要介绍如何通过 ShadowMap 在OpenGL中实现阴影 。 核心原理 Shadow Map的基本思想:通过LightView画一张DepthMap,然后Camera View渲场景的时候,把Pixel坐标变换到Light Spac […]


OpenGL(十八)Gamma校正 色域 与 HDR

通常来说,在不同设备上看到的颜色是不同的。其中最常提及的概念是高动态光照渲染(High-Dynamic Range,简称 HDR )。它可以使图像在亮度的表现上更丰富。这篇文章讨论设备颜色和校正的相关概念。 眼前的黑不是黑 人眼对亮度的敏感程度不是线性的,更容易被亮的东西所吸引。 […]


OpenGL(十七)Photoshop blend算法 与 图层混合模式

使用混合模式可以制作丰富多彩的效果。而OpenGL中可以轻松开启这种模式,但更关键的是图形算法。本文参照 Photoshop blend算法 ,介绍如何通过shader,在OpenGL中实现混合效果。 OpenGL中开启混合 在OpenGL中可以开启混合模式: [crayon-5 […]


OpenGL(十六)通过 卷积 实现: 边缘混合 、 Blur 和 高斯模糊

卷积 (Convolution)是两个变量在某范围内相乘后求和的结果。卷积计算通常用来处理边缘的颜色或整体的混色。作为采样之后的处理,可以供很多功能使用。因此在图像效果处理时,它还是应用比较广泛的。 区域缩暗 通过最简单的像素采样,可以将图片中整体的锐利度降低,通过在一个3&#2 […]


OpenGL(十五) 雾效 的 shader 实现

雾效 可以表现出一个线性的颜色变化,常用于烘托场景气氛。这种效果的实现原理并不复杂,本文着重讨论如何通过shader编写完成雾效的实现。 核心原理 雾效的核心在于:计算视点与物体之间的距离,然后根据一个衰减公式进行颜色混合。常规的算法有线性衰减,指数衰减,指数幂衰减。 线性雾效 […]


OpenGL(十四) 环境反射 环境折射 的shader实现 1

在上一节我们讲解了如何制作天空盒,本篇文章介绍它的一个衍生功能——在物体上叠加 环境反射 。 核心原理 核心很简单,在天空盒中,视线照射到天空盒上的区域即需要绘制的部分。在环境反射中,需要绘制的区域变成了视线在物体表面的反射光线,反射光线照射到天空盒的位置即要绘制的部分。 环境反 […]


OpenGL(十三) 天空盒 的 shader 实现

天空盒 的使用可以使用户感觉所处一个封闭的世界环境,使得游戏更加真实。本文主要介绍如何通过OpenGL和GLSL来实现天空盒。 核心原理 天空盒 的核心原理其实并不复杂,它相当于在视线外套上一个盒子。盒子有6个面,分别使用6张可以拼接在一起的图片。从原理上讲,通过比较视线的xyz […]