skinned mesh 蜘蛛样
被skinned mesh 折磨了 好久,开始感觉skinindices不对,因为pix显示里面全是0
后来跟来跟去发现是这样的,那些uchar的整数被pix用float的格式显示出来 (显示为0.0000000而不是按照生命的uint显示为0)
变成很小的数所以是0.00000
这样skinindices 就也是对的了 weight看起来也是对的 因为加起来等于1
哦对了 phyre的d3d11要把shader里面的semantic
skinindices :BLENDINDICES;
skinweights :BLENDWEIGHTS;
要这么写,不能就写个color0 看起来它是由后面的sementic来确定的
chr的skin运动起来看起来是蜘蛛一样的,并没有拉伸到无穷远,也没有很乱,说明还是比较正确的,只是哪里。。比如没有unormalize或者范围被扩大了(float 才要normalize 这个排除了
weight错误我也大概能认出来了 是会有蹼状的拉伸
矩阵如果没有转置会有三角片那样像无限远拉伸
这种在一个范围内的拉伸反向,看起来是比如把脚跟的matrix乘到了膝盖膝盖上,skintransform看起来也是对的,所以还是skinindices不对,位置不对。。。感觉是这样
偶然发现了pix显示buffer的方法,在layout那页把你的类型写进去就可以了,那页相当于脚本。
这样就奇怪了 因为skinindices还是0
.。。。。。skinindices并不是0 前面有些frame是0是因为那些frame里还没画
后面找到了数据完全正确的skinindiceds 和weight 矩阵看起来也对
就只有mul的问题了 也就是一开始就最先怀疑的rowmajor的问题
被semantic这个问题遮蔽了
这下人物也正常了 只有define mul(a,b)mul((b),(a))好使就一切ok啦
上次升级我大概是手动改的mul 这次一定要找到一个宏
准备用u4 的处理方法
//////if you genetated matrix (float3X3(VectA,VectB,VectC)),you must use mul else use MulMatrix means you passed through a matrix para
if defined XX
define MulMatrix(Mtx, Vect) mul(Vect, Mtx)
这是个比较全面的解决方案,忽略我前面文章说的 单纯define mul(a,b)mul((b),(a))这种方法
skinned mesh 蜘蛛样的更多相关文章
- Skinned Mesh原理解析和一个最简单的实现示例
Skinned Mesh 原理解析和一个最简单的实现示例 作者:n5 Email: happyfirecn##yahoo.com.cn Blog: http://blog.csdn.net/n5 ...
- skinned mesh render
[skinned mesh render] 相比MeshRender组件 ,SkinnedMeshRender多了bones组件.所以很明显,MeshRender不支持骨骼动画,而SkinnnedMe ...
- 骨骼蒙皮动画(Skinned Mesh)的原理解析(二)
http://blog.csdn.net/jimoshuicao/article/details/9283071 2)蒙皮信息和蒙皮过程 2-1)Skin info的定义 上文曾讨论过,Skinned ...
- Mesh属性[Unity]
Mesh属性[Unity] Mesh是Unity内的一个组件,称为网格组件.3D网格是Unity中最重要的图形元素.在Unity中存在多种组件用于渲染标准网格或者蒙皮网格.拖尾或者3D线条. 在Uni ...
- mesh合并
[风宇冲]Unity3D性能优化:DrawCall优化 (2013-03-05 15:39:27) 转载▼ 标签: it unity unity3d unity3d教程 分类: Unity3d之优化 ...
- Mesh Filter & Mesh Render
[Mesh Filter] The Mesh Filter takes a mesh from your assets and passes it to the Mesh Renderer for r ...
- Unity Mesh 初体验
什么是Mesh Mesh是Unity中的一个组件,称为网格组件.通俗的讲,Mesh是指模型的网格,3D模型是由多边形拼接而成,而一个复杂的多边形,实际上是由多个三角面拼接而成.所以一个3D模型的表面是 ...
- 转 unity 优化
最近研究U3D开发,个人认为,精通一种新的技术,最快最好的方法就是看它的document,而且个人习惯不喜欢看中文的资料,原汁原味的东西是最正确的,一翻译过来很多东西就都不那么准确了.于是通读了uni ...
- unity5.0新功能-布料、动画系统
原作者:只待苍霞 这一章讲一下布料系统, 这次的布料系统有很大的改良.Unity4中, 需要对SkinnedMeshRenderer使用SkinnedCloth, 或者对Cloth Renderer使 ...
随机推荐
- php实现显示网站运行时间-秒转换年月日时分秒
<?php // 设置时区 date_default_timezone_set('Asia/Shanghai'); /** * 秒转时间,格式 年 月 日 时 分 秒 * * @author w ...
- Linux安全运维日志排查几个 tips
运维日志排查记录 前言 记录一些排查常见日志的命令,方法wiki,欢迎补充(Markdown 语法). 常用命令 查找关键词并统计行数 cat 2015_7_25_test_access.log | ...
- Java实现计算20的阶乘
循环从1乘到20,要注意的就是结果可能会很大,长度超出int类型的范围,所以定义乘积的时候用long. 代码如下: public class Practice3 { public static voi ...
- C#高级功能(二)LINQ 和Enumerable类
介绍LINQ之前先介绍一下枚举器 Iterator:枚举器如果你正在创建一个表现和行为都类似于集合的类,允许类的用户使用foreach语句对集合中的成员进行枚举将会是很方便的.我们将以创建一个简单化的 ...
- 使用工厂bean和Utility Schema定义集合
工厂bean是实现了beanFactory接口的bean,也可以继承AbstractFactoryBean,主要是用于在给定属性参数之后自动创建一个bean对象. 我们在使用基本集合标记定义集合时,不 ...
- Unity3d Shortcuts
参考:http://www.ceeger.com/Manual/ 场景视图导航 Click-drag to drag the camera around. 点击拖拽平移场景视图 Hold Alt a ...
- android asmack 注册 登陆 聊天 多人聊天室 文件传输
XMPP协议简介 XMPP协议(Extensible Messaging and PresenceProtocol,可扩展消息处理现场协议)是一种基于XML的协议,目的是为了解决及时通信标准而提出来的 ...
- pcre 使用
1.主页地址:http://www.pcre.org/ 下载pcre-7.8.tar.bz22.解压缩: tar xjpf pcre-7.8.tar.bz23.配置: cd p ...
- scjp考试准备 - 6 - 父类构造器的引用
题一,如下代码的执行结果: class Person{ String name = "No name"; public Person(String nm){name = nm;} ...
- [小技巧]让C#的空值处理变得更优雅
参考 http://www.codeproject.com/Articles/739772/Dynamically-Check-Nested-Values-for-IsNull-Values?msg= ...