码迷,mamicode.com
首页 > 编程语言 > 详细

Unity3D Compute shader 新解粒子堆积矩阵【二】

时间:2015-05-12 23:09:44      阅读:358      评论:0      收藏:0      [点我收藏+]

标签:dx11   unity3d   compute   c#   shader   

Unity3D Compute shader 新解粒子堆积矩阵【二】

1.Compute Shader都出来了好些年了,幸好Unity3D 加入了该特性,当然U3D本着易开发操作平台,在u3d中实现compute shader起来是相当轻松的。

2.除了Compute Shader,还有 Vertex shader,Geometry shader,Fragment shader ; Tesselation shader,Domain shader,Hull Shader ,如果你觉得有一种都想学或者饥渴而不是去厌倦的话,你将来绝对会牛X的,那么请先受小弟一拜。


注意注意:请不要邪恶的复制我!!!不然割了你的小XXX。
http://blog.csdn.net/baidu_26153715/article/details/45674547 恬纳微晰 所有。。。
你可以转载啊,转前请留翔。。不用谢。。。


  • 彩色立方体

    技术分享
    记得2015.3.0那天,我使用了全身力气搜尽了Compute Shader的资料,没有发现它的一点有用的线索,那时度娘要卖萌,收到的尽是什么恶心的新闻,于是借助了隔壁老王的VPN神器,在谷歌上找到了一篇Unity ComputeShader的文章http://kylehalladay.com/blog/tutorial/2014/06/27/Compute-Shaders-Are-Nifty.html(就是它,你使劲戳它秒进),至于然后呢我就直接洗洗睡吧。

  • 立方体原始外貌
    技术分享

    我当时有进过微软官网的,因为这毕竟是DX!!,所以进了官网溜达了一转,然后又不小心出来了,”出来了”!。。。对!。。当时就是这么出来的,因为笔记本触摸板真TMD的机智,机智的触摸到了技术分享 ← 它。最后,我就趟了睡了。

  • 立方体疯狂的移动?
    技术分享

我开始有点不淡定了,为嘛这样子,ComputeShader为嘛这么欺负人,因为我对这张图技术分享看了不下5遍/day的节奏,这道坎卡死了,当然我最后看懂了,因为我始终是以应试教育的思想把它作为单纯的数字坐标,于是我想微软有那么傻B吗,弄一坨数学翔,他其实就是在欧几里坐标空间内分了许多小方块(线程组),再加上自身的SV_GroupThreadID不就是每个线程的空间坐标吗!!!?? (应试教育牛逼啊,本来都是TMD简单的东西却也能让一个自以为数学好的人拉翔)


关键技术实现

  1. 立方体的颜色

    技术分享

    你猜这是几维的UV坐标?(就是这个o.uv)
    技术分享,如果前面都理解,那么64意义是把UV定在(0,1)区间。

    这个嘛!就是传说中的UV坐标颜色。
    技术分享

  2. 立方体的点位置

    技术分享

    如果前面你都理解了,那么点的位置不就是欧几里坐标吗?
    关键是,你得像数组一样把数组每个元素都存有坐标到buffer才是,,,,
    那怎么一个一个的元素遍历?
    如果你把它理解了,那 技术分享就对了,不过SV_GroupIndex是在一个组内的点编号。
    问题是,我们这儿要的是权威的所有点的编号,哈哈哈,我不告诉你。
    不过,如果你的Dispatch为(1,1,1),那么SV_GroupIndex就相当于所有点的唯一编号。

  3. 移动立方体?能姨妈?
    技术分享

我就这么移动,就这么任性!

 C#中的任性

技术分享

 Compute Shader中的任性

技术分享

当然,一定要随性子来,想怎么移就怎么移。

留给喜欢看疯骚的代码的伙伴

  1. Use in C#
    技术分享
  2. Use in ComputeShader
    技术分享
  3. Use in Shader
    技术分享

Unity3D Compute shader 新解粒子堆积矩阵【二】

标签:dx11   unity3d   compute   c#   shader   

原文地址:http://blog.csdn.net/baidu_26153715/article/details/45674547

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!