文章目录

  • 一、前言
  • 二、效果演示
  • 三、使用方法
    • 1、流体发射器
    • 2、流体碰撞器
    • 3、流体渲染器
    • 4、修改流体颜色
    • 5、盆子模型
    • 6、流体颗粒大小
    • 7、流体材质
    • 8、喷射口调节
    • 9、喷射速度调节
    • 10、碰撞材质
    • 11、流体重力加速度
    • 12、使用粒子系统
  • 四、结束语

一、前言

点关注不迷路,持续输出Unity干货文章。

嗨,大家好,我是新发,今天给大家分享一个Unity流体模拟插件:Obi Fluid
本文Demo工程已上传到CodeChina,感兴趣的同学可以下载下来学习:
地址:https://codechina.csdn.net/linxinfa/UnityFluidSimulationDemo
注意:我使用的Unity版本是2020.2.7f1c1 (64-bit)

二、效果演示

效果演示:




三、使用方法

1、流体发射器

Hierarchy空白处右键点击菜单3D Object / Obi / Obi Emitter (with solver)

此时,会创建一个挂了如下四个组件的物体:
Obi Emitter:流体发射器;
Obi Emitter Shape Disk:流体发射器的形状;
Obi Particle Renderer:流体粒子渲染器;
Obi Solver:流体解决方案。

此时运行效果如下:

2、流体碰撞器

我们创建一个平面。

挂上Obi Collider组件。

运行效果如下:

3、流体渲染器

我们看到上面的流体效果是明显的小球的样子,此时,我们给摄像机挂上Obi Fluid Renderer组件,并赋值Particle Renderers元素为上面创建的Obi Emitter

并将Obi Emmiter物体上的Obi Particle Renderer组件的Renderer勾选去掉。

再运行,效果如下:

4、修改流体颜色

通过Obi Particle RendererParticle Color属性,即可修改流体的颜色。

效果如下:

5、盆子模型

为了方便演示,我们加个盆子模型,为其添加Mesh Collider组件,并勾选Convex

并挂上Obi ColliderObi Rigidbody组件。

如下:

为盆子添加Obi Collider组件,否则流体会直接穿过盆子。

将摄像机镜头拉近,运行效果如下:

6、流体颗粒大小

通过Obi Particle RendererRadius Scale可以调节流体颗粒的大小,如下,我们调整为1.5

运行效果如下:

运行一会儿,帧率跌3.6FPS,我们需要设置一下参数,减少运算。

7、流体材质

通过Obi Emitter组件的Emitter Material可以设置流体的材质,如下,以LowResulution为例。

运行效果如下:

此时,帧率可以稳定在60FPS左右。

8、喷射口调节

选中Obi Emitter,可以在Scene窗口中看到喷射口的形状,是一个像花洒一样的东西。

我们看到喷射口的方向不是对着盆子的,调整一下Transform的角度,使喷射口的方向对准盆子。

喷射口有点大,可以通过Obi Emitter ShapeRadius即可调节喷射口的大小,我们调为0.12,如下:

运行效果如下:

我们还可以替换喷射口形状,比如换成条形的喷射口。

9、喷射速度调节

我们看到喷射速度比较慢,可以通过Obi Emitter组件的Speed属性调节喷射速度,我们调为4,再给一个随机受力Random Velocity

运行效果如下:

10、碰撞材质

可以通过Obi Emitter组件的Collider Material设置碰撞材质。
为了演示,我们把喷射口角度调整一下,让流体喷射在盆口边缘,如下:

接着,我们以VerySticky为例。

运行效果如下,可以看到粘性很强:

11、流体重力加速度

通过Obi Solver组件的Gravity可以调节流体的重力加速度,如果重力加速度太大,流体可能会穿透容器。

如下,-30的重力加速度太快了,导致流体穿透容器。

如果设置为正值,流体则会收到向上的加速度,比如设置为5

运行效果如下:

12、使用粒子系统

Obi Emitter子节点下创建一个粒子系统。

给粒子系统挂Particle Advector组件,并赋值Solver对象。

将摄像机的Obi Fluid Renderer组件禁用。

随便设置下粒子的效果,

运行效果如下:

四、结束语

喜欢Unity的同学可以点击关注,欢迎留言评论,我会不断写一些Unity的干货文章,希望可以帮助到想学Unity的同学。

【游戏开发进阶】Unity流体模拟,支持粒子系统,支持流体碰撞交互(Obi Fluid插件使用教程)相关推荐

  1. 【游戏开发进阶】带你玩转模型法线,实验一下大胆的想法(法线贴图 | shader | Unity | python | 爬虫)

    文章目录 一.前言 二.直观感受法线贴图 三.表面法线 1.表面法线的概念 2.空间与坐标系 2.1.世界空间--世界坐标系 2.2.局部空间--局部坐标系 2.3.切线空间--切线坐标系 2.4.小 ...

  2. 【游戏开发进阶】教你Unity通过Jenkins实现自动化打包,打包这种事情就交给策划了(保姆级教程 | 命令行打包 | 自动构建)

    文章目录 一.前言 二.Jenkins简介 三.Jenkins的下载与安装 1.JDK下载与安装 2.Jenkins下载 3.Jenkins安装 4.Jenkins初始化 四.Jenkins的基本操作 ...

  3. 王楠——海外华人程序员视角:解密移动游戏开发与Unity 4引擎特性

    海外华人程序员视角:解密移动游戏开发与Unity 4引擎特性 发表于2012-09-07 17:24| 12534次阅读| 来源CSDN整理| 0 条评论| 作者杨依帆 游戏开发Unity游戏引擎王楠 ...

  4. HTML5游戏开发进阶指南(亚马逊5星畅销书,教你用HTML5和JavaScript构建游戏!)

    HTML5游戏开发进阶指南(亚马逊5星畅销书,教你用HTML5和JavaScript构建游戏!) [印]香卡(Shankar,A.R.) 著 谢光磊 译 ISBN 978-7-121-21226-0 ...

  5. Unity 2D游戏开发视频教程 Unity 2D Game Developer Course Farming RPG

    Unity 2D游戏开发视频教程 Unity 2D Game Developer Course Farming RPG Unity 2D游戏开发课程农业RPG MP4 |视频:h264,1280×72 ...

  6. HTML5游戏开发进阶指南

    <HTML5游戏开发进阶指南> 基本信息 作者: (印)香卡(Shankar,A.R.) 译者: 谢光磊 出版社:电子工业出版社 ISBN:9787121212260 上架时间:2013- ...

  7. 世嘉MD游戏开发进阶篇【三】:向量归一化的实现及应用

    向量归一化是非常有用的,游戏中经常能用到,就说大家都见过的,FC魂斗罗的敌人发射子弹就能用到了,敌人向玩家发射子弹首先要获取到向量,这个向量不能直接作为方向去用,必须要经过归一化处理才行,经过归一化处 ...

  8. 游戏开发技术Unity开发引擎

    Unity 是一个完全集成的开发引擎,提供了丰富的开箱即用的功能,用于创建游戏及其他互动式3D内容.您可以使用Unity 将艺术和资源组装到场景和环境:增加物理效果:同步播放测试和编辑您的游戏,并在准 ...

  9. 学习3D游戏开发进阶之路

    笔者从事IT行业15年了,一直奋斗在一线编程,从普通程序员逐步成长到上市公司技术总监,目前在创业公司担任技术合伙人,主要负责公司整个项目团队的技术管理.在网上或者论坛上很多同学请教过我关于如何学习3D ...

最新文章

  1. java课堂测试样卷-----简易学籍管理系统
  2. Trial SCN WebIDE版本下载
  3. 辅助Visual Studio 2017部署的DevOps新工具
  4. 计算机视觉中的多视图几何_基于深度学习的视觉三维重建研究总结
  5. 企业实战_20_MyCat使用HAPpoxy对Mycat负载均衡
  6. IE 6 特有的条件注释详情
  7. PHP初入--表单元素
  8. Java 中 == 和equals()方法的不同点
  9. mysql 绿色安装 ubuntu_Ubuntu免安装配置MySQL
  10. 分布式,项目发布管理
  11. pygame下载(非常详细)
  12. Bartender软件使用VB判断条件并返回值
  13. 如何利用计算机技术检索文献,文献检索过程作业怎么写
  14. MIMO 从入门到精通 -科普篇2 - MIMO and Beamforming
  15. allure如何定制Pytest自动化测试报告样式
  16. 详解Linux终端下编写“贪吃蛇”游戏
  17. Python.对鸢尾花数据集进行可视化操作,对数据分析
  18. 北京大学软件与微电子学院学习经验文章集78篇和1个专题
  19. idea添加自定义插件仓库 灵狐插件、阿里代码规约插件安装idea插件推荐
  20. 数据结构C++——二叉树的实现

热门文章

  1. 【Python web 开发】 bottle 简单教程 (四)
  2. 车载以太网第二弹-实锤|SOME/IP概述及TC8 SOME/IP 测试实践
  3. 一个较为感人的升学故事
  4. 《 iOS 应用逆向工程》作者沙梓社专访:运用逆向工程思维来优化自己的产品
  5. 电信天翼路由器 连接另外一个路由器
  6. 网络编程之Socket零基础入门Demo
  7. STM32互补PWM输出使能控制
  8. 什么样的视频号内容更容易火?视频号怎么做推送上热门
  9. HR面试问题-离职原因
  10. 真香,50行Java代码爬取妹子套图!