{"id":26138545,"url":"https://github.com/csdjk/lcllib-for-houdini","last_synced_at":"2025-07-18T00:06:53.300Z","repository":{"id":41394656,"uuid":"456809836","full_name":"csdjk/LcLLib-for-Houdini","owner":"csdjk","description":"houdini library,some example and hda tools","archived":false,"fork":false,"pushed_at":"2024-11-12T10:02:02.000Z","size":32574,"stargazers_count":10,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-14T00:08:44.507Z","etag":null,"topics":["houdini","houdini-plugin"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csdjk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-08T06:23:58.000Z","updated_at":"2025-03-31T16:15:41.000Z","dependencies_parsed_at":"2024-10-27T16:02:16.028Z","dependency_job_id":null,"html_url":"https://github.com/csdjk/LcLLib-for-Houdini","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"jamesrobinsonvfx/houdini_package_template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdjk%2FLcLLib-for-Houdini","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdjk%2FLcLLib-for-Houdini/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdjk%2FLcLLib-for-Houdini/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdjk%2FLcLLib-for-Houdini/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csdjk","download_url":"https://codeload.github.com/csdjk/LcLLib-for-Houdini/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248799955,"owners_count":21163404,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["houdini","houdini-plugin"],"created_at":"2025-03-11T01:59:32.182Z","updated_at":"2025-04-14T00:09:29.058Z","avatar_url":"https://github.com/csdjk.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LcLLib-for-Houdini\n\n自定义Houdini HDA库，封装了一些自己常用的HDA节点，方便以后使用。顺便记录一下Houdini的一些知识点和Demo,方便以后查阅。\n\n## 1. Houdini 自定义库安装教程\n\n这里以我的自定义库 `LcLLib-for-Houdini`为例。\n\n1. 创建一个LcL.json文件，并将其放在Houdini的库文件夹中，例如:`C:\\Users\\Administrator\\Documents\\houdini19.0\\packages`\n2. 在LcL.json文件中添加以下内容：\n\n```json\n{\n    \"env\": [\n        {\n            \"LibPath\": \"F:/HoudiniProjects/libs\"\n        }\n    ],\n    \"package_path\" : [\n        \"$LibPath/packages\",\n        \"$LibPath/LcLLib-for-Houdini/packages\"\n    ]\n}\n```\n\n- `LibPath`为自定义库的路径。\n- `package_path`为自定义库的子文件夹路径，可以有多个。\n\n3. 在自定义库的packages文件夹中创建 `LcLLib.json`文件\n\n![1693812474066](image/README/1693812474066.png)\n\n并添加以下内容：\n\n```json\n\n{\n    \"load_package_once\": true,\n    \"path\": [\n        {      \n            \"value\" : \"$LibPath/LcLLib-for-Houdini\",\n            \"method\" : \"prepend\",\n        },\n    ],\n    \"env\": [\n        {\n            \"LcLLib\": \"$LibPath/LcLLib-for-Houdini\"\n        },\n        {\n            \"HOUDINI_SCRIPT_PATH\": {\n                \"method\": \"prepend\",\n                \"value\": [\n                    \"$LcLLib/scripts\",\n                ]\n            }\n        },\n        {\n            \"HOUDINI_OTLSCAN_PATH\": {\n                \"method\": \"append\", \n                \"value\": [\n                    \"$LcLLib/otls/geo\",\n                    \"$LcLLib/otls/grass\",\n                    \"$LcLLib/otls/road\",\n                    \"$LcLLib/otls/rock\",\n                    \"$LcLLib/otls/terrain\",\n                    \"$LcLLib/otls/tools\",\n                    \"$LcLLib/otls/track\",\n                    \"$LcLLib/otls/tree\",\n                ]\n            }\n        },\n        {\n            \"HOUDINI_VEX_PATH\": {\n                \"method\": \"append\", \n                \"value\": [\n                    \"$LcLLib/vex/^\",\n                ]\n            }\n        },\n        {\n            \"HOUDINI_OCL_PATH\": {\n                \"method\": \"append\", \n                \"value\": [\n                    \"$LcLLib/ocl\",\n                ]\n            }\n        },\n    ],\n}\n```\n\n- `load_package_once`为true时，只加载一次自定义库。\n- `path`为自定义库的路径。\n- `env`为自定义库的环境变量，可以有多个。\n\n## 2. LcLLib-for-Houdini 的Example文件\n\n### [雨滴水波模拟](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/examples/water)\n\n![1693816134877](image/README/1693816134877.gif)\n\n### [简单的烟雾模拟](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/examples/smoke)\n\n![1693821659576](image/README/1693821659576.gif)\n\n## 3. LcLLib-for-Houdini 的HDA节点\n\n### [LcL Water Wave Tools](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/tools)\n\n`HDA:   water_wave`\n\n用于创建无缝FFT海水，可以通过修改参数来调整海水的大小、波长、波高、波速、波向、波的数量等。\n支持导出序列帧法线贴图。\n\n![1693818175779](image/README/1693818175779.gif)\n\n合成后的法线贴图（8x8）\n![1693904688049](image/README/1693904688049.png)\n\n### [LcL Noise Creator](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/tools)\n\n`HDA:  noise_creator`\n\n用于创建噪声贴图，支持多种噪声类型，例如Perlin、Worley、Voronoi、Cellular、Simplex、Value等。\n\n![1693828818467](image/README/1693828818467.png)\n\n### [LcL Gpa Data Importer](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/tools)\n\nGPA截帧数据导入器，用于把GPA导出的CSV数据写入FBX中，例如uv、法线、顶点颜色等。\n原本GPA导出的obj是没有uv等数据的。\n\ncsv文件格式：\n![1693971844222](image/README/1693971844222.png)\n\n写入FBX后的效果：\n\n![1693972063318](image/README/1693972063318.png)\n\n### [lcl_scater_non_overlapping](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/particle)\n\n不重叠撒点，在 `scatter align` 节点基础上封装，剔除了重叠的Point\n\n![1704784939634](image/README/1704784939634.png)\n\n### [lcl_meteorite_scatter](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/particle)\n\n陨石分布\n\n![1704786399736](image/README/1704786399736.png)\n\n### [lcl_import_volume_texture](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/volume)\n\n导入3D Texture序列，转成Volume\n\n![1704787356247](image/README/1704787356247.png)|![1704787556062](image/README/1704787556062.png)\n---|---\n\n## 石头生成工具\n\n### [lcl_rock_generator_low](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/rock)\n\n![1706519960942](image/README/1706519960942.png)\n![1706522527711](image/README/1706522527711.gif)\n\n### [lcl_rock_generator_complex](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/rock)\n\n![1706521940141](image/README/1706521940141.gif)\n\n### [lcl_rock_generator_high](https://github.com/csdjk/LcLLib-for-Houdini/tree/main/otls/rock)\n\n![1706522225385](image/README/1706522225385.gif)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsdjk%2Flcllib-for-houdini","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcsdjk%2Flcllib-for-houdini","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsdjk%2Flcllib-for-houdini/lists"}