HdCycles
Ben Skinner Technical Director làm ở Tangent Animation đã chia sẻ cuối cùng cũng đã tới lúc open source cho plugin HdCycles !
Đây là plugin giúp đưa các tài nguyên tương thích với Hydra (tức là Pixar USD file) thực hiện từ Blender vào Houdini để làm hiệu ứng kỹ xảo, sau đó dùng Solaris để thực hiện Look Dev, HdCycles đóng vai trò đưa render Blender Cycles vào viewport của Solaris để có thể render được scene có cùng look dev, như vậy giúp qui trình look dev, lighting và render finaling ở Blender sẽ đồng bộ.
Về nguyên tắc, khi thực hiện plugin, bất cứ phần mềm nào hỗ trợ USD đều có thể dùng chung. Không chỉ Houdini Solaris mà còn render được trên USDView, Katana. Đảm bảo look dev là 1 :1 giữa phần mềm dùng plugin và Blender. được thực hiện cho phiên bản phát hành này.
Nhiều chức năng coi như ổn đã được hỗ trợ, tuy nhiên vẫn còn một số hiệu năng và tính ổn định gặp trục trặc. Đội ngũ phát triển HdCycles vẫn tiếp tục làm việc để chỉnh sửa những khuyết điểm này. Đây là bảng Alpha. Nó sẽ có bug và treo máy.
Mọi người khi sử dụng, feedback về cho team ở GitHub sẽ sớm đưa sản phẩm này vào hoàn thiện. Đầy đủ chức năng của plugin HdCycles có thể đọc ở đây.
[box]
Liên kết tải về từ GitHub: https://github.com/tangent-opensource/hdcycles
[/box]
Đội Ngũ Tham Gia Hỗ Trợ
Đây là các thành viên và đội ngũ đã tham gia hỗ trợ hiện thức hóa plugin HdCycles
- Tangent Animation
- Mark Theriault
- Stefan Werner
- Adam Katz
- Jake Fullerton
- Blazej Floch
- Matt Estela (đây chính là CGWiki với series nổi tiếng cho Houdini là JoyOfVex, anh cũng là giáo sư của đại học UTS chuyên nghành Animation & Visualization do Animal Logic thành lập một bộ môn tại UTS, Úc)
- Pixar
Vài Điều Cần Biết Khi Lần Đầu Tiên Sử Dụng
Khi lần đầu tiên load lên sử dụng, có vài thứ các bạn cần biết trước:
- Không thể chọn được các đối tượng interactively
- Subdivision đã tắt mặc định, có thể bị văng khi sử dụng với vài attribute (
HD_CYCLES_ENABLE_SUBDIVISION=1
) - Motion blur cũng tắt default, motion blur dựa theo transform hoạt động. (
HD_CYCLES_ENABLE_MOTION_BLUR=1
) - Normals tạo bởi Houdini là chưa dùng được. Tương lai sẽ hỗ trợ.
- Nhiều cấp độ schema của nội dung usdCycles đã được đưa vào. Nhiều việc nữa sẽ thực hiện để đúng tiêu chuẩn Open Source
- Phần Blender Exporter chưa phải là Open Source – vẫn đang tiếp tục phát triển.
- Render “Transparent” (tức là render không có background) đã hỗ trợ bằng cách thiết lập
HD_CYCLES_USE_TRANSPARENT_BACKGROUND=1
- Tiled rendering không hỗ trợ
- Hỗ trợ hiển thị Filmic
config.ocio
, cần phải tự set OCIO environment variable - Tối đa Max samples thông qua environment variable
HD_CYCLES_MAX_SAMPLES=512
- Houdini
- Tự xài tự chịu. Hiện tại phát triển còn rất sơ sài.
- Team sẽ cố gắng phát triển chức năng này sớm
- Hỗ trợ Point rendering, resolution và style set thông qua primvars (tương tự karma). Trong LOPs attribute wrangle:
i[]@cycles:object:point_style = {1}; //0 discs, 1: spheres
i[]@cycles:object:point_resolution = {16};
- Houdini Cycles nodes đã được cung cấp thông qua
tools/hda/cycles_nodes.hda
- Khi sử dụng usdCycles schema sẽ được tạo, sẽ tạo thêm các hda để hỗ trợ qui trình làm việc Houdini theo setting render và các thiết lập cụ thể theo đối tượng
Nếu tự build thì cũng khã dĩ và khuyên nên làm thế. Tuy nhiên nếu dùng Houdini 18.0.532 trên windows, thì có thể tải về dùng luôn. Hiện tại phiên bản build đang cung cấp chỉ là CPU rendering, và cũng không đảm bảo là sẽ có cập nhật hay thích hợp. Trong tương lai nếu có thể sẽ bổ sung chức năng build tự động thông qua script.
HdCycles – 0.7.0 (Windows + Houdini 18.0.532)
Để cài đặt cần phải thêm cái này plugin/usd/hdCycles
and plugin/usd/ndrCycles
đường dẫn cho PXR_PLUGINPATH_NAME
environment variable.
Environment Variable – BIến Môi Trường
Một danh sách biến môi trường cung cấp cho người dùng HdCycles, tuy nhiên tự dùng tự chịu.
Environment Variable | Default | Description |
/* ====== HdCycles Settings ====== */ | ||
HD_CYCLES_ENABLE_LOGGING | FALSE | Enable HdCycles Logging |
HD_CYCLES_ENABLE_MOTION_BLUR | FALSE | Enable HdCycles motion blur support |
HD_CYCLES_MOTION_STEPS | 2 | Number of frames to populate motion for |
HD_CYCLES_ENABLE_DOF | TRUE | Enable hdCycles depth of field support |
HD_CYCLES_ENABLE_SUBDIVISION | FALSE | Enable HdCycles subdiv support |
HD_CYCLES_SUBDIVISION_DICING_RATE | 0.1 | Mesh subdivision dicing rate |
HD_CYCLES_MAX_SUBDIVISION | 12 | Maximum levels of subdivision |
HD_CYCLES_RENDER_WIDTH | 1280 | Width of a non interactive HdCycles render |
HD_CYCLES_RENDER_HEIGHT | 720 | Width of a non interactive HdCycles render |
HD_CYCLES_USE_OLD_CURVES | FALSE | If enabled, curves will be populated manually with meshes (You probably dont want this) |
HD_CYCLES_USE_TRANSPARENT_BACKGROUND | FALSE | If enabled, the background will be transparent in renders |
/* ======= Cycles Settings ======= */ | ||
HD_CYCLES_ENABLE_EXPERIMENTAL | FALSE | Experimental cycles support. |
HD_CYCLES_SHADING_SYSTEM | SVM | Shading system cycles will use |
HD_CYCLES_DEVICE_NAME | CPU | Device cycles will use to render |
HD_CYCLES_DISPLAY_BUFFER_LINEAR | TRUE | Format of display buffer. False: byte. True: half. |
HD_CYCLES_MAX_SAMPLES | 256 | Number of samples to render per pixel |
HD_CYCLES_BVH_TYPE | DYNAMIC | DYNAMIC or STATIC |
HD_CYCLES_NUM_THREADS | 0 | Number of threads to use |
HD_CYCLES_PIXEL_SIZE | 1 | Size of pixel |
HD_CYCLES_TILE_SIZE_X | 64 | Size of tile x |
HD_CYCLES_TILE_SIZE_Y | 64 | Size of tile y |
HD_CYCLES_START_RESOLUTION | 4096 | Maximum start Resolution of render |
HD_CYCLES_EXPOSURE | 1 | Exposure of cycles film |
HD_CYCLES_SHUTTER_MOTION_POSITION | 1 | Position of shutter motion position. (0: Start, 1: Center, 2: End) |
/* ===== Curve Settings ===== */ | ||
HD_CYCLES_CURVE_RESOLUTION | 3 | Resolution of curve |
HD_CYCLES_CURVE_SUBDIVISIONS | 3 | Curve subdvisions |
HD_CYCLES_CURVE_USE_BACKFACES | FALSE | Should curve geometry have backfaces |
HD_CYCLES_CURVE_USE_ENCASING | TRUE | Should curve be encased |
HD_CYCLES_CURVE_SHAPE | CURVE_THICK | Shape of curves [CURVE_RIBBON, CURVE_THICK] |
HD_CYCLES_CURVE_PRIMITIVE | CURVE_SEGMENTS | Curve primitive [CURVE_TRIANGLES, CURVE_LINE_SEGMENTS, CURVE_SEGMENTS, CURVE_RIBBONS] |
/* ===== Integrator Settings ===== */ | ||
HD_CYCLES_INTEGRATOR_METHOD | PATH | Method of path tracing. [PATH, BRANCHED_PATH] |
HD_CYCLES_DIFFUSE_SAMPLES | 1 | Number of diffuse samples for cycles integrator |
HD_CYCLES_GLOSSY_SAMPLES | 1 | Number of glossy samples for cycles integrator |
HD_CYCLES_TRANSMISSION_SAMPLES | 1 | Number of transmission samples for cycles integrator |
HD_CYCLES_AO_SAMPLES | 1 | Number of ambient occlusion samples for cycles integrator |
HD_CYCLES_MESH_LIGHT_SAMPLES | 1 | Number of mesh light samples for cycles integrator |
HD_CYCLES_SUBSURFACE_SAMPLES | 1 | Number of subsurface samples for cycles integrator |
HD_CYCLES_VOLUME_SAMPLES | 1 | Number of volume samples for cycles integrator |