笔者使用的是 Unity 2018.2.0f2 + VS2017,建议读者使用与 Unity 2018 相近的版本,避免一些因为版本不一致而出现的问题.    [Unity Shader](三) ------ 光照模型原理及漫反射和高光反射的实现    [Unity Shader](四) ------ 纹理之法线纹理.单张纹理及遮罩纹理的实现    [Unity Shader](五) ------ 透明效果之半透明效果的实现及原理    [Unity Shader](六) ------ 复杂的光…
一.理解 利用GLKBaseEffect,自定义顶点着色器和片元着色器,结合天空盒子,展示效果 二.技术代码 CCSkyBoxEffect:天空盒子效果类: CCSkyboxShader.vsh:顶点着色器: CCSkyboxShader.fsh:片元着色器: //立方体场景贴图纹理处理及顶点数据处理 - (id)init { self = [super init]; if (self) { _textureCubeMap = [[GLKEffectPropertyTexture alloc]…
天空盒子 一般的3D游戏都会有着北京百年一遇的蓝天.让人惊叹不已.事实上天空这个效果没有什么神奇的仅仅需用到天空盒子这个组件即可.能够将天空设想成一个巨大的盒子,这个盒子将整个游戏视图和全部的游戏元素包括当中. 在unity中制作天空盒子非常方便,仅仅须要像设置其它组件一样设置下即可了.在制作天空盒子之前.我们须要搜集一些天空的贴图.只是.unity非常方便的为开发人员提供了天空盒子的资源包.首先在project视图中点击鼠标右键.然后选择import package--skyboxes即可加入…
一.基础知识 1.项目中需要有AudioListener,播放器中播放的声音就是AudioListener组件坐在的位置听到的声音.默认AudioListener是放到Main Camera上.没有AudioListener的话是听不到声音的.一般默认就在摄像机上.2.把音乐拖到Assets中,选中要播放音乐的游戏对象(如果鸡叫.坦克爆炸等声音一般放到鸡.坦克这些游戏对象上,而背景音乐等则一般放到摄像机上),点击主菜单:Component→Audio→audio source 增加Audio组件…
加载天空盒子的六个jpg图片,不知道为什么加载不出顶部和底部的jpg图片.没有解决. 加载来自http://www.custommapmakers.org/skyboxes.php的tga图片,没有问题.…
立方体反射(CubeMap) 在虚拟环境中,我们需要模拟材质球反射周围的环境,立方体反射正是让材质球反射出天空盒的背景的方法之一. 原理 当我们观察物体时,物体表面足够光滑,再视线方向和物体相交的点上,能够看到物体映射的周围环境,交点上呈现的正是沿着反射方向观察到的物体. 1. 我们需要在同一空间(这里是世界空间)中计算 视线方向I.反射向量R: 视线方向: float3 I = posW -_WorldSpaceCameraPos.xyz;//摄像机指向顶点的方向 反射向量: o.R = re…
Unity圣典 传送门:http://www.ceeger.com/Script/Camera/Camera.RenderToCubemap.html Camera.RenderToCubemap 有4个重载 (1)bool  RenderToCubemap(Cubemap cubemap)  bool  RenderToCubemap(Cubemap cubemap,int faceMask) 可以用于在编辑器中生成场景静态立方体贴图.faceMask是一个bitfield比特数,表示那个立方…
Unity3d 导入fbx文件后纹理不显示(3ds Max中显示正常) 原因: 1.纹理图片没有导入fbx同一文件夹中 2.纹理图片没有在fbx文件之前导入(现导入纹理图片,再导入fbx文件)…
纹理扩散适合与做游戏的背景(卷轴效果),原理就是让材质贴图动起来(循环运动),代码很简单希望对大家有用 1 2 3 4 5 6 7 8 9 10 11 12 13 // Scroll main texture based on time var scrollSpeed = -0.5; // This must be set to override a bug where Render Order // of the tunnel objects is lost when SetTextureOf…
skyBox: new Cesium.SkyBox({ sources: { positiveX: 'static/image/skyBox/posx.jpg', negativeX: 'static/image/skyBox/negx.jpg', positiveY: 'static/image/skyBox/negy.jpg', negativeY: 'static/image/skyBox/posy.jpg', positiveZ: 'static/image/skyBox/posz.jp…