GPUSkinning

0 条评论

GPUSkinning 教程大纲(UNITY3D)
节一. 原理

  1. 动画:理解骨骼动画的运作方式
  2. 模型:理解美术的制作流程
  3. 骨骼:理解骨骼动画以及背后的数学意义

节二. 实践

  1. 技术背景
  2. 使用GPUSkinning
  3. 工作原理(重点)
  4. 实际效果
  5. 其他可以同时进行的优化方案

阅读全文

UNITY3D Playables API 实践(上)

0 条评论

概述

Playables API 推出已经一年有余(2017–07–04 New in Unity 2017.1)。即使你没时间其他的新功能, 也应该看看这个 Playable API .做过大型游戏的同学无论你是做过 2D或3D 只要使用过 Animaiton Controller,或多或少体会过被 蜘蛛网(复杂状态机过渡) 支配的恐惧。当下有了 Playable API 可供使用,我们能轻易的向 Legacy animation API 的使用习惯靠拢 — 高效及易于定制。

一个简单的状态机,当然这不是我们想要的。

在我看来 Playable API 的目的就是为了替换掉Legacy动画系统,并且兼容Timeline(本篇不介绍timeline 感兴趣的可以自己去看看)。总的一个词概括就是 【dynamically】,如同使用组件一般的灵活。

目前我在测试中使用了 UNITY2018.1+ 编辑器。如果不使用该可视化插件您在 UNITY5.x 版本就能使用Playable API。 使用5.x版本的Playable API 时请注意后续的代码API变更,某些函数名或调用方式可能已经更改,如果从未使用过 建议从 UNITY2017+ 开始入手。

阅读全文

绘制聊天气泡思路

0 条评论

记录一些小技巧 ,借此机会重新开始写作 .这里提供两种思路,最后建议将这两种做法结合一下 可以做成类似微信聊天气泡的效果。

阅读全文

LipSync插件调研2

0 条评论

这周会计划研究LipSync方向,会写一些资料记录过程。本篇并不讲详细使用步骤,只讨论其功能实现。

本篇评测的工具实现方式都相近,插件列表如下:

LipSync Pro【U3D】
EasyTalk【U3D】
Lipsync Tool【美术用】
Face and lips

评测的方向: 1. 嘴型同步 2.面部表情
评测角度: 1. 实现方式 2. 可用性

阅读全文

LipSync插件调研1

0 条评论

这周会计划研究LipSync方向,会写一些资料记录过程。本篇并不讲详细使用步骤,只讨论其功能实现。

本篇评测的插件列表如下:
SALSA With RandomEyes
UniLip

评测的方向: 1. 嘴型同步
评测角度: 1. 实现方式 2. 可用性

阅读全文

protobuf中使用继承

0 条评论

前两天有一个问题一直困扰我。使用protobuf .net版本的时候序列化类,基类的字段会丢失。随后我问了下朋友无一例外他们都使用的是组合而非继承。我也在反思是否这个做法本身就有问题。我昨天Google的时候发现有人遇到相同的问题,遂在本篇中记录。

阅读全文

编辑器扩展-分割条

0 条评论

可拖动分割条在 Unity3D 的编辑器结构中一般都属于最外层结构,因为它是基于 GUI 组件,计算位置的时候必须要很精确,所以跟Layout 流式布局混编会比较乱。这里也推荐作为最外层结构使用。

可拖动的分割条

阅读全文

UNITY性能优化参考篇

0 条评论

下面是我给项目组的一些参考。其中也包含各种各样的标准,与优化建议。项目优化并不是一件事,它是点点滴滴串联起来的(勿以恶小而为之),我见过很多项目只是图一时之方便就导致后期很难做 比如 前期未规划好图集,模型贴图材质目录混用,UI制作未按照 复用/特殊 的标准制作,动画导出帧率不统一高高低低 等等。如果一开始没有定制良好的规范,后面想要补救只能靠程序写一些工具批量处理,当然这工具也不一定好写。

阅读全文

Unity new API

0 条评论

这里记录一些Unity3D的API 以备不时之需。

阅读全文

SNFramework

0 条评论

起源

2015年 我在淘米写了一套 消息传递机制 当然这一套在我的上家公司也得到验证。
2016年 我在世纪创意基于2015年一版的消息传递进行了封装但是当时赶项目也没有引入。我称之为 SmartNotificationFramework 我希望它能达到足够的灵活,在我看来它工作的还不错,但是太简陋。
2018年 也就是今年我终于得空并且集中时间大量重构与完成了大部分的单元测试。SNFramework 是我正在使用的消息传递机制。它已经有了初步的理想功能,如消息上下分隔离,消息被阅读成功自动释放(即指执行一次),广播消息等。

阅读全文

分析缺氧(Oxygen not included)中所用到的技术

0 条评论

元旦期间玩了缺氧,感觉十分的好玩。属于深度沙盒经营类游戏。既然好玩那就要知其所以然,今天抽空看了看源码,基本上列出所有能找到的工具或技术。算是一个记录,也开阔一下视野。如果你还有什么补充欢迎给我留言。

阅读全文

动态获取AgentTypeID

0 条评论

前阵子我在Github上给Unity团队提了一个issue关于使用代码获取agentTypeID,说来惭愧是我自己的没找到对应的代码。在我使用另外渠道获取此ID的时候 Unity团队已经默默给我回复了这个issues.先说说我的解决方式,由于代码设置 agentTypeID 的时候需要给一个Int类型变量,这个变量其实是对应了一个枚举,我在UnityEditor Inspector的Debug窗口中直接获取了对应AgentTypeID. 笑. 本文记录我获得答复的过程,换个角度想想其实也能发现另外的解决方案即使不知道也没关系

解决方案

阅读全文

三维向量曲线平滑算法

0 条评论

在网上看到一个平滑算法,很好用,经过我测试 效率很高,Chaikin 函数调用2-3次会获得一个相对较好的曲线。算法链接
原理是不断的裁切三角形让其分裂成2个三角,2个三角变成4个,以此类推,最终会越来越平滑从而接近一个圆。

裁切范例

阅读全文

使用物理检测范围与距离内的目标

0 条评论

分享一个技围检测脚本,用来判定范围内是否有目标,或者是线性范围内是否可见目标。

简洁范围检测

阅读全文

解决NavmeshAgent寻路边界的判定

0 条评论

今天群里有兄弟问: “我看到navmeshagent里面有个方法叫什么获取网格边缘点的,我打算首先判断目标点在不在网格上。在的话正常逻辑,不在的话判断当前agent的位置有没有到那个边缘点 “ 。我想这样应该能解决这个问题。

解决边界点的判定

阅读全文