Simple Cubemap Reflection

Simple Cubemap Reflection

  Cubemap加在MainTex上,所以Property需要按如下定义:

  

  注意_Cubemap的类型是CUBE。

  使用Cubemap,需要计算反射向量,Unity内置的worldRefl是一个可以直接使用的反射向量。

  

  反射向量的概念如下:

  

  由于有了worldRefl,cubemap的实现就很简单了,如下:

  

  

  

时间: 2024-10-09 18:51:00

Simple Cubemap Reflection的相关文章

【Unity Shaders】学习笔记——SurfaceShader(九)Cubemap

[Unity Shaders]学习笔记——SurfaceShader(九)Cubemap 如果你想从零开始学习Unity Shader,那么你可以看看本系列的文章入门,你只需要稍微有点编程的概念就可以. 水平有限,难免有谬误之处,望指出. 上一节中讲述了制作Cubemap的方法.这一节讲讲怎么使用它. Simple Cubemap 先来看一下最简单的Cubemap. Shader "Custom/SimpleReflection" { Properties { _MainTint (&

Shader基础

一.概念篇 1.基准:unity里的shader并不是一门独特的语言,而是一种代码生成方式,且可将低层次且复杂的shader编程进行简化.但同时你也还是得使用Cg/HLSL来写的. 2.原理:写一个函数,以UVs或者一些数据为入口,然后以SurfaceOutput为输出.同时在SurfaceOutput这个结构体里还有不同的 属性.这样对于这个函数来说,他的执行过程会生成vertex和pixel的Shader,并且传递一些渲染的路径. 3.结构:输出结构: 1 2 3 4 5 6 7 8 str

shader 4 杂 一些和函数名词、数据结构

Normal:  法线 Normao mapping: 法线贴图 Lighting mapping: 光照贴图 Bump mapping:     凹凸贴图:模拟粗糙外表面的技术. FX-Water simple.shader中即用到了.模拟波浪效果. Rim lighting: 边缘光照: 在对象的边缘部分添加?亮度. Base Texture, 基础纹理. Detail Texture,细节纹理.与base texture使用同样的uv,可是在material中的Tiling值不同. Cub

unity shader笔记

clip函数可以用来切割mesh clip(var); var 的值小于0时就会被切割 表面着色器 其实就是生成了定点片元着色器,相当于一种包装和简化吧 标准的填充结构 struct SurfaceOutput { fixed3 Albedo; // diffuse color fixed3 Normal; // tangent space normal, if written fixed3 Emission; half Specular; // specular power in 0..1 r

Unity3d 基于物理渲染Physically-Based Rendering之实现

根据前文的例子http://blog.csdn.net/wolf96/article/details/44172243(不弄超链接了审核太慢)弄一下真正的基于物理的渲染逃了节课= =,弄了一下.公式和之前的文章一样,这次加上cubeMap贴图,由于方便,就直接用surface shader了,因为不用求reflect方向,之前也有这一篇文章说明surface shader中cubeMap的使用方法和实时反射的方法http://blog.csdn.net/wolf96/article/detail

unity3d 实时动态反射周围世界

先截出一个效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd29sZjk2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" > 要反射出周围世界 我们仅仅须要一个周围世界的cubemap 先来看反射的shader 首先声明变量: _Cubemap                  须要反射的cubemap _ReflAmount       

A Simple OpenGL Shader Example II

A Simple OpenGL Shader Example II [email protected] Abstract. The OpenGL Shading Language syntax comes from the C family of programming languages. Tokes, identifiers, semicolons, nesting with curly braces, control-flow, and many key words look like C

立方体贴图(Cubemap)

http://blog.csdn.net/asdjy123/article/details/51190643 点击打开链接 好东西保存方便查看 立方体贴图(Cubemap) 原文 Cubemaps 作者 JoeyDeVries 翻译 Django 校对 Geequlim 我们之前一直使用的是2D纹理,还有更多的纹理类型我们没有探索过,本教程中我们讨论的纹理类型是将多个纹理组合起来映射到一个单一纹理,它就是cubemap. 基本上说cubemap它包含6个2D纹理,这每个2D纹理是一个立方体(cu

公共技术点之 Java反射 Reflection

公共技术之 Java反射 Reflection 1. 了解Java中的反射 1.1 什么是Java的反射 Java反射是可以让我们在运行时获取类的函数.字段.父类.接口等Class内部信息的机制.通过反射还可以让我们在运行期实例化对象,调用方法,通过调用get/set方法获取变量的值,即使方法或字段是私有的的也可以通过反射的形式调用,这种"看透class"的能力被称为内省,这种能力在框架开发中尤为重要. 有些情况下,我们要使用的类在运行时才会确定,这个时候我们不能在编译期就使用它,因此