找回密码
 立即注册
查看: 811|回复: 0

【Houdini】学习

[复制链接]
发表于 2021-12-6 18:02 | 显示全部楼层 |阅读模式
零、相关学习资源:

学习还是三剑客最好。官方视频教程+项目源文件+官方文档。社区内容是用来帮助理解一些基础概念和掌握一些偏门技巧来帮助提升效率的。

  • 如UE的OnlineLearningCourse、Marketplace中的ContentExamples、不同引擎版本的Documentation。
  • Houdini官方也提供免费的LearnCourse视频课程、Hip源文件、F1帮助文档。


  • https://www.sidefx.com/learn/getting_started/(新手入门)
  • https://www.sidefx.com/learn/  (按模块学习)
  • https://www.sidefx.com/tutorials/ (按教程学习)
  • https://www.sidefx.com/contentlibrary/(项目源文件)
  • https://www.sidefx.com/docs/houdini/basics/intro.html(官方文档)



建模、火焰、水体、破碎



新手、初级、中级、高级



Hip源文件



官方文档

基础:


  • ———Vex———
  • valarjin:Houdini VEX  day01
  • 蒋融:Houdini SOP & VEX入门笔记(1)
  • David Chan:Houdini:VEX 基础
  • 开发游戏的老王:Houdini图文笔记:VEX知识点小结(一)
  • David Chan:Houdini:常用VEX函数和技巧
  • 翎玄:Houdini (二) Geometry节点基础
  • YivanLee:虚幻4渲染编程(DCC工具篇---Houdini)【VEX in Houdini】
  • 易水:Houdni  Vex 概要及实例,一(@,channel,common function)
  • 鲨莉叶:Vex for Houdini要点合集(一)语法基础及环境
  • 鲨莉叶:Vex for Houdini要点合集(二)常用表达及注意事项
  • Introduction to Houdini (官方文档是最好的学习资料)
  • 开发游戏的老王:Houdini图文笔记:如何声明全局变量(更新使用VEX创建全局变量)
  • 源源 Yuenyuen:Houdini螺旋线轨迹制作
  • 偃鼠:[Houdini]2021314 Heart
  • 偃鼠:[Houdini]红藕香残玉簟秋
  • 菜鸡秋田:Houdini学习笔记-VEX语言学习
  • 菜鸡秋田:Houdini学习笔记之阶段性学习(一)
  • 菜鸡秋田:Houdini学习笔记-常用节点积累(一)
  • ———XOP———
  • David Chan:Houdini:Geometry Attribute
  • David Chan:Houdini:数据的引用和传递
  • CGAI即时演绎:Houdini节点分类与参数翻译
  • iiif:程序猿 Houdini 启蒙
  • iiif:A Trip to Houdini Geometry Internals
  • 【UE4没意思啊】从入门到入坟 (Houdini程序化建模)
  • ———Explode———
  • 油管最好的Houdini 入门教程--01 UI and Navigation_哔哩哔哩_bilibili (第一节渲染出图就算基础操作入门了)
  • Pyro FX in Houdini 18.5 Tutorial , Part 01 | Explosion | For Beginner (Pyro基础爆炸效果)
  • 白狸奴:Unreal 影视爆炸材质功能全解锁
  • cgwiki
  • Learning Houdini (官方教程)
效率:


  • 漫云:【houdini】如何自定义你的houdini
  • 开发游戏的老王:Houdini图文笔记:基本操作(现学现卖更新中)
  • 【Houdini】0——基础界面与基础操作


一、UE4 Linux环境配置

【1】下载UE4 源码

要用到这个Setup.sh和GenerateProjectFiles.sh,应该是

  • bat——windows
  • command——macos
  • sh——linux


【2】解压后执行命令


  • 进入release文件夹


2. Success成功配置环境
./Setup.sh

3.生成工程文件
./GenerateProjectFiles.sh

4. 编译项目,生成可执行文件,进度数如下:
直接make就好。
make

  • UE4Editor 3041
  • UE4Game 717
  • UnrealPak 62
  • CrashReportClient 77
  • ShaderCompileWorker 105
  • UnrealLightmass 65
make UE4Editor UE4Game UnrealPak CrashReportClient ShaderCompileWorker UnrealLightmass 编译完成之后右键运行UE4Editor即可。






编译成功的话,这个金贵的图标会出现的。


【3】给UE4Editor 添加环境变量快速访问

1.用gedit文本编辑器打开位于用户根目录的bash.rc文件
sudo gedit ~/.bashrcenv可查环境变量的路径。
2.拉到最下方添加命令
# set unreal command
export PATH=$PATH:/home/username/Downloads/UnrealEngine-release/Engine/Binaries/Linux

  • export PATH使环境变量生效
  • PATH=$PATH: ...  将这个路径添加到环境变量当中
3.启动Binaries/Linux中的UE4Editor命令
可以使用Tab自动补全命令。

  • UE4E

    • UE4Editor

  • UE4

    • UE4Editor
    • UE4Editor-Cmd
    • UE4Game

UE4Editor

【4】安装Houdini For Unreal插件


  • 源码——https://github.com/sideeffects/HoudiniEngineForUnreal
  • 文档——Houdini Engine for Unreal: Main Page


1.git clone  将插件源码放在Engine/Plugins/Runtime/HoudiniEngine下面


2.更改HoudiniEngine.Build.cs的版本和HFSPath路径。
HFSPath即Houdini的安装路径。


它会自动找Linux平台的路径。


如果是mnt的话,那就直接设置成mnt的软件路径。要不然报错说找不到路径。could not found 18.5啥的。


3.再次执行三个命令
./Setup.sh
./GenerateProjectFiles.sh
make有些时候还得自己改些Bug。要不然编译不成功。


终于编译成功了。


注意Plugins,引擎目录中已经搁Runtime里放过了,所以项目中的Plugins下就不要放了。要不然肯定会报错,说缺少Modules之类的。


二、Linux基础

自用
【1】Linux相关基础:

1.基础:

  • bash和sh有什么区别?
  • sudo为什么叫sudo?  (superuser do,Superuser超级用户相当于Windows的administrator管理员)
  • 作为Linux小白,想咨询下sudo apt-get update 到底在干嘛,以及为什么要更新源?
  • Linux中国:Debian 和 Ubuntu:有什么不同?应该选择哪一个? | Linux 中国 (93年的Debian是04年Ubuntu的爹)
  • Super,Hyper,Meta是键盘上的什么键? (Windows Windows;MacOS Command;Linux Super)
  • Windows C:\Users\Username(Administrator );Linux  /home/Username(没有磁盘符)  ,Win \ Linux /
2.控制台:
Linux的指令太多了,记不过来。


  • 小吃货:Ubuntu的软件安装管理---dpkg与apt-*详解 (debian package、advanced package tools)
  • Wangke:linux清屏命令(clear,reset,cls)(Ctrl+L更快,Ctrl+Shift+C/V 复制粘贴命令)
  • 卸载软件

    • sudo dpkg --list (查找软件名称)
    • sudo apt --purge +软件名称



3.压缩包/软件安装包:
我的直觉会把Debian读作地编。


  • RPM——Red-Hat 红帽 Package Manager
  • DEB——Debian(DEBian)


rpm文件还需要通过控制台命令解压成deb文件,因为有些rpm指令是不管用的,说缺失模块。如QQ Linux版。




sudo apt install rpm
sudo rpm -ivh linuxqq_2.0.0-b2-1089_x86_64.rpm
改用Alien转化
sudo apt install alien
sudo alien +rpm文件名
rpm变成deb,右键用软件安装打开。需要从网页中下载的压缩包下载Deb格式就好。

  • Deb,用软件安装打开(直接右键安装)
  • Rpm,用归档管理器打开(命令行安装指不定说缺这个组件,那个模块。较凡)
  • Sh,用文本编辑器打开
<hr/>【2】Linux常用软件:

软件能云端云端,能网页网页,linux好多win的软件不能用很烦,能用但许多功能被阉割更烦,有些软件根本不提供linux版最烦。
Onedrive不能用(Typora笔记同步就不行了),Snipaste不能用(截图慌了),AutoHotKey不能用,Windows上的好东西都不能用。
Typora记笔记云端图片不好搞,还是一截图至剪切板再粘贴上传到Zhihu就能云端保存较方便。
P3X Onenote的同步功能等同于Onedrive了,但是标题大纲快速导航没有Typora方便。虽然截图一复制也能云端保存,但是页面越自由整理的时间就越长越耗精力,而且onenote用的频率比zhihu低太多了,查阅复习不方便,笔记页面乱糟糟的。


  • Edge——网页
linux

  • Visual Studio Code——代码编辑器
deb安装

  • Sysmontask——Win10任务管理器
sudo apt install pip3
sudo pip3 install sysmontask
sudo sysmontask

  • Typora——笔记
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt-get update
sudo apt-get install typora

  • P3X Onenote——笔记
sudo apt install snap
sudo snap install p3x-onenote

三、Houdini基础

【1】闲扯


  • 底层系统——Linux,一切皆文件



  • 中层软件——Houdini,一切皆资产
不同的8个模块:

  • img——Compositing——合成设置
  • mat——VEX Builder——模型材质
  • obj——Objects——常用
  • out——Outputs——渲染输出设置(Mantra/Arnold渲染器)
  • ——不常用——

    • ch——chop
    • shop——老版本的材质模块
    • tasks——
    • stage——






  • 上层资产——USD——一切皆信息


页面布局跟Blender一样可以灵活切换窗口,应该是跟爹地学的。


除了Snipaste,其他都是shit。


  • Network View ——Blueprint
  • Parameters——Details Panel 参数细节列表
  • Tree View——模块大纲(跟Blender一样,只不过信息以节点面板显示,而不是参数面板)


软件设计都一样,模型坐标渲染等相关设置、模型编辑环切挤出等操作。Blender模型的Object Mode、Edit Mode;Maya模型的Transform、Shape;Houdini模型的Geo、Geo。
U退I进Y断线。相对UE,除Shift+O Comment、/Find外,可以设置节点的颜色C、形状Z,添加便签(Shift+P)。


专门的attribute wrangle写vex语言就跟专门的custom node写hlsl语言一样。
【2】Geo


  • points 点——南北两极2个点+24个点*(5+1+5)=2+264=266个点
  • primitives | polygons 多边形——24*2个三角形+ 10*24个四边形=48+240=288个原形
  • vertices 顶点——24*2 *3+ 10*24*4=144+960=1104个顶点


各个节点都是对这些points、primitives、vertices进行操作的,可以在Group Type中选择针对哪种属性进行操作。



  • 可以在Spreadsheet中查看Points、Vertices、Primitives的相关参数。
  • 可以D打开Display Options窗口设置显示属性。


相关快捷键:

  • Q/B——Bypass
  • W——Footprint
  • E——Template
  • R——Display
  • T——Render
  • Y——断线
  • U——退
  • I——进
  • O——预览小视图
  • P——参数窗口
  • F/G——Home Selected
  • H——Home All
  • J——快速连线
  • L——Layout(Shift+L Layout Selected)
  • Z——节点形状
  • X——Visualize可视化节点
  • C——节点颜色Color
  • N——调出OP Operators圆盘,Down就跟那个地图下钻的下钻意思一样。
  • /——Find Node
【3】Vex


  • 亮紫色 Render
  • 蓝色 Display
  • 暗紫色 Template


小箭头下有很多的Vex脚本预设,鼠标悬浮函数名上打开可F1官方帮助文档。


【4】VOP


  • VEX——Vector EXpression——HLSL
  • VOP——Vector OPeration——材质蓝图/蓝图函数
参数暴露:

  • Name在VOP节点内部显示
  • Label在VOP节点外部显示,如果没有Label,默认使用Name命名。


右键Vex/Vop Options->Create Input Parameters等同于在蓝图函数内提升变量暴露给外部使用。

  • 绿色——Vector,P Position、V Velocity、force、Cd Colordiffuse、uv、N Normal
  • 青色——Float,age、life、Time、TimeInc、Frame
  • 蓝色——Int,id、ptnum、primnum、vtxnum、numpt、numprim、numvtx
  • 粉色——String,OpInput1、2、3、4



  • 黄色Param,参数,可暴露给外部调节。
  • Const,常数,相当于蓝图函数的本地变量LocalVariables。
  • Set attribute,跟材质蓝图set、make、break attributes一样。


【5】Pyro爆炸


  • add可以添加单个或多个顶点,用来控制burstsource的位置。
  • point replicate跟Niagara的Spawn Burst Instantaneous一样,一帧生成多少个Emitter发射器,Shape中可以设置Uniform Scale值来控制Scatter粒子分散程度
  • pyroburstsource 设置Particles粒子属性。大小、方向、样式、尖锐程度;粒子存活时间;粒子物理属性;
  • pyrosolver,pyroburst的Particle粒子跟Groom的Guide Line一样,是粒子的引导线,最终的爆炸/毛发效果是由Solver解算实现的。




待续。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-22 22:57 , Processed in 0.141198 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表