HNScraper icon indicating copy to clipboard operation
HNScraper copied to clipboard

Add Swift 5 compatibility

Open faizmokh opened this issue 4 years ago • 13 comments

faizmokh avatar May 20 '20 15:05 faizmokh

I just found https://github.com/princeton-vl/infinigen/issues/94. After I hide all placeholders and unhide all others, it's still not the same as in the video.

image

RodenLuo avatar Dec 04 '23 13:12 RodenLuo

Awesome video!

coarse/scene.blend is intentionally low poly and is used mostly for planning camera / creature motion, not for rendering.

Files of the form fine_*/scene.blend are actually used for rendering, and you should use those if you want the actual scene geometry. Apologies this isnt better documented.

Also worth noting that each fine_XXXX/scene.blend contains a different view-specific terrain marching-cubes mesh in the current Infinigen version, so there isnt a single terrain mesh that corresponds to the whole video.

araistrick avatar Dec 05 '23 22:12 araistrick

Another issue you will run into (even once using the fine.blend) is that the corals are instanced meshes, IE there is only a limited number of unique corals per scene and they are reused with many different positions to save cost. The FBX standard in supports exporting these, but I dont think blender's FBX exporter has implemented support for them.

Blender's USD exporter does support instances but we have experienced some issues with it in some scenes and are still working on an official solution, so it is uncharted territory to some extent.

araistrick avatar Dec 05 '23 23:12 araistrick

Hi Alex, Thanks very much! Some observations:

I was transferring files from Ubuntu (where I ran Infinigen) to Windows. I transferred the whole coarse folder and opened coarse/scene.blend in Blender on Windows. The rendering was shown in my first post.

There were the following links in the fine_ folder. I was on Termius SFTP. It complained and couldn't transfer the links. I then skipped these links and manually created a Windows shortcut for them.

~/infinigen/worldgen/outputs/my_videos/46f017a5/fine_0_0_0001_0$ ll

lrwxrwxrwx  1 luod g-luod        70 Nov 25 06:37 assets -> /home/luod/infinigen/worldgen/outputs/my_videos/46f017a5/coarse/assets/

lrwxrwxrwx  1 luod g-luod        75 Nov 25 06:43 scene.blend -> /home/luod/infinigen/worldgen/outputs/my_videos/46f017a5/coarse/scene.blend

For both of the scenes (coarse and fine), they looked missing a lot of objects. I then realized that it might be the problem of transferring. I installed a desktop on Ubuntu and opened the fine and the coarse scene natively in that Ubuntu. The rendering now makes sense. I will now experiment with a few exporting solutions and see what happens.

image

RodenLuo avatar Dec 06 '23 12:12 RodenLuo

Seems like only those shown in the viewport get exported. I tried to get the placeholders gone and the seaweeds and the corals back. But then the GUI is very slow. I would greatly appreciate a command line export, much like the command line rendering.

RodenLuo avatar Dec 10 '23 10:12 RodenLuo

I would love infinigen to be an alternative for various different payed tier world generators such as gaea or wold creator or what ever, but I think it is not ready for that right now from what I have seen? Are there any plans to eventually being able to use infinigen for such purposes?

PatchByte avatar Jan 30 '24 21:01 PatchByte

Hello, sorry for the slow progress, we have an official exporter to USD that will be released in the next update (v1.3). I will reply to / close this issue when that is released.

araistrick avatar Mar 12 '24 20:03 araistrick

Very excited for an official USD exporter! Thanks for all the hard work!!

romesco avatar Apr 26 '24 01:04 romesco

Hello, we've released a preview version of the export code - you can try the docs on the rc_1.3.2 branch

araistrick avatar Apr 26 '24 01:04 araistrick

Hello, we've released a preview version of the export code - you can try the docs on the rc_1.3.2 branch

@araistrick Thanks for this USD exporter. These are the outputs of the exporter, containing a .usdc file and many texture images. A60937D8-BF14-4c69-9900-1F6DFFCA5173 However, when I import these files into UE5, I can only reconstruct a very small scene, perhaps about 100m * 100m in size. I've tested many scenes and they all turn out like this. Is this correct, and how can I restore a complete large scene like in the rendered videos? Dingtalk_20240531113247 4AB09A40-0BEB-4a9b-9DCB-AFD67923CEB7

bbbbubble avatar Jun 24 '24 03:06 bbbbubble

Could you send the commands you used to run the scene and, if possible, one of the original .blend files? I'm not sure whether its something on export's end or if the original scenes were small to begin with. Thanks!

David-Yan1 avatar Jun 24 '24 05:06 David-Yan1

Could you send the commands you used to run the scene and, if possible, one of the original .blend files? I'm not sure whether its something on export's end or if the original scenes were small to begin with. Thanks!

The command to generate the scene:

/root/infinigen/infinigen/datagen/manage_jobs.py --num_scenes 1 --pipeline_configs monocular_video cuda_terrain local_64GB --configs coast.gin video high_quality_terrain --pipeline_overrides iterate_scene_tasks.frame_range=[1,480]  --output_folder outputs/my_videos

The original .blend file size is 1.5 GB, so I seem unable to attach it here. However, when I open it in Blender, it only shows a small portion of the scene (this is also the case with some other scenes I've generated), just like in UE5. I suppose that in the actual InfiniGen rendering process, more than just the .blend file is used, but also peripheral scene information. Therefore, if the exporter outputs usdc, it shouldn't rely solely on the .blend file as input, it should also consider peripheral scene information, correct?

image

bbbbubble avatar Jun 25 '24 02:06 bbbbubble

您能否发送用于运行场景的命令,如果可能,还可以发送原始 .blend 文件之一?我不确定它是导出端的东西,还是原始场景一开始就很小。谢谢!

生成场景的命令:

/root/infinigen/infinigen/datagen/manage_jobs.py --num_scenes 1 --pipeline_configs monocular_video cuda_terrain local_64GB --configs coast.gin video high_quality_terrain --pipeline_overrides iterate_scene_tasks.frame_range=[1,480]  --output_folder outputs/my_videos

原始 .blend 文件大小为 1.5 GB,因此我似乎无法在此处附加它。但是,当我在 Blender 中打开它时,它只显示了场景的一小部分(我生成的其他一些场景也是如此),就像在 UE5 中一样。我想在实际的 InfiniGen 渲染过程中,不仅使用了 .blend 文件,还使用了外围场景信息。所以,如果导出器输出 usdc,它不应该仅仅依赖 .blend 文件作为输入,它还应该考虑外围场景信息,对吗?

图像

Hello, the high-quality terrain I generated does not appear to be of high quality, and the triangles can be clearly seen. Is there a problem with my command line?

python -m infinigen.datagen.manage_jobs --output_folder outputs/ExportUSDC_01_arctic_high_quality --num_scenes 1 --specific_seed 0 --configs arctic.gin high_quality_terrain.gin --pipeline_configs local_256GB.gin monocular.gin blender_gt.gin export.gin --pipeline_overrides LocalScheduleHandler.use_gpu=False

微信截图_20240905100624

Uploading 微信截图_20240905100624.png…

DreamerYinYu avatar Sep 05 '24 07:09 DreamerYinYu