游戏图形学
文章平均质量分 86
程序届的胖头鱼
打工人,程序猿
展开
-
游戏图形学 —— Shader2.0基础结构
Shader2.0和Shader1.0的主要区别,Shader2.0可以进行编程,而不是简单的开关控制。Shader2.0的结构如下:Shader "Learning/Structure"{ Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { ...原创 2019-06-19 11:10:04 · 452 阅读 · 0 评论 -
游戏图形学——Shader1.0(Fixed Shader)
之前在游戏图形学基础介绍中介绍了渲染的基本流程以及Shader的分类,Shader1.0属于开关控制,本文主要介绍Shader1.0的基本结构,和一些基本操作。Shader "Custom/Property"{ Properties //属性定义通用格式 { /*以下划线开头, _name("",type)=value */ _MainTex (...原创 2019-06-14 16:07:01 · 541 阅读 · 0 评论 -
游戏图形学 —— 基础介绍
标题原创 2018-11-19 20:23:36 · 987 阅读 · 0 评论 -
游戏图形学——简单的波动
在学习了解了Shader2.0基础结构,本文学习一个实例简单的波动:Y=Asin(ωx+φ)φ:决定波形与x轴的位置关系(横向移动位置,左加右减)ω:决定周期(最小正周期T=2π/|ω|)A:决定峰值(纵向拉伸/压缩的倍数)...原创 2019-06-27 10:08:00 · 393 阅读 · 0 评论 -
游戏图形学——旋转动画
游戏开发中经常会使用到加载动画,加载动画可以通过序列帧的方式实现,也可以采用UV纹理旋转使用一张图片实现。旋转矩阵:绕x-轴的主动旋转定义为:绕y-轴的主动旋转定义为:绕z-轴的主动旋转定义为:旋转注意事项物体平移到原点实现旋转物体平移到原来的位置...原创 2019-07-18 10:12:54 · 478 阅读 · 0 评论 -
游戏图形学 ——河流效果简单实例
实现原理:纹理移动,模型静止备注:uv坐标取值范围(0-1)Shader "Hidden/River"{ Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { // No culling or depth Cull Off ZW...原创 2019-07-16 10:20:42 · 318 阅读 · 0 评论 -
屏幕后期特效——模糊
场景渲染完以后再添加一些特效引擎渲染后最终的结果是一张图片void OnRenderImage(RenderTexture src, RenderTexture dest) //入口函数Graphics.Blit(src,dest,myMaterial);——拦截相机渲染出来的图片,用指定方式修改后再重新交给引擎将图片传给Shader进行二次计算...原创 2019-07-25 10:46:49 · 245 阅读 · 0 评论 -
屏幕后期特效——Blood(角色死亡闪血)
Blood 血液闪烁特效1、红色光线从两边闪出2、红色从两边倒中间渐变淡(通过圆心的距离判别渐变的距离)Shader 代码:Shader "Hidden/Blood"{ Properties { _MainTex ("Texture", 2D) = "white" {} _Blood("Length",float)=1 } ...原创 2019-08-06 10:49:12 · 3399 阅读 · 1 评论 -
游戏图形学——屏幕后期特效:水波纹
在之前的文章简单的波动中有介绍波动方程,本文以此为基础学习屏幕后期特效:水波纹Shader代码如下:Shader "Hidden/ScreenWave"{ Properties { _MainTex ("Texture", 2D) = "white" {} _WaveAraneg("WaveArange",float)=0.5 ...原创 2019-08-14 11:11:49 · 771 阅读 · 0 评论