Difference between revisions of "FAQ"
(→Can I export lightmaps from Bakery to another program?) |
|||
(16 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | ===Does it have realtime GI?=== | |
No. | No. | ||
− | + | ===What about mixed lighting?=== | |
Yes! Bakery supports combining real-time direct lighting with baked indirect, as well as [https://docs.unity3d.com/Manual/LightMode-Mixed-Subtractive.html subtractive] and [https://docs.unity3d.com/Manual/LightMode-Mixed-Shadowmask.html shadowmask] modes. | Yes! Bakery supports combining real-time direct lighting with baked indirect, as well as [https://docs.unity3d.com/Manual/LightMode-Mixed-Subtractive.html subtractive] and [https://docs.unity3d.com/Manual/LightMode-Mixed-Shadowmask.html shadowmask] modes. | ||
− | + | ===What about directional lightmaps?=== | |
Oh yes, we have [[Manual#Directional mode|quite a variety]]. | Oh yes, we have [[Manual#Directional mode|quite a variety]]. | ||
− | + | ===Which platforms are supported?=== | |
You can ship games with Bakery lightmaps on any platform. But for using Bakery you will need a 64-bit Windows (7+) machine with a Nvidia (6xx or newer) card. Check [[Manual#System requirements|system requirements]]. | You can ship games with Bakery lightmaps on any platform. But for using Bakery you will need a 64-bit Windows (7+) machine with a Nvidia (6xx or newer) card. Check [[Manual#System requirements|system requirements]]. | ||
− | + | ===Is it progressive? Does it show lightmap updates in real time?=== | |
No. Just a progress bar. | No. Just a progress bar. | ||
− | + | ===Can Bakery take advantage of multiple GPUs?=== | |
Yes it can. Bakery is based on OptiX, so same rules apply: | Yes it can. Bakery is based on OptiX, so same rules apply: | ||
− | [[File:Image38.png]] | + | [[File:Image38.png|1000px]] |
+ | |||
+ | Additionally, if you are baking in RTX mode, all GPUs should be RTX to work together. | ||
+ | |||
+ | |||
+ | ===Can I export lightmaps from Bakery to another program?=== | ||
+ | |||
+ | In short, yes, you can. There are two ways: | ||
+ | * 1. Fully unwrap your scene in your modeling package before baking (not individual objects, but the whole scene, in one or multiple atlases). Group objects sharing each atlas under a common parent object. Put [[Manual#Bakery_Lightmap_Group_Selector|Lightmap Groups]] with '''Original UV''' mode to these parent objects. Bake. This way the resulting lightmaps will have 100% original UV match. You can then get the baked .hdr textures and use them anywhere. | ||
+ | * 2. If you can't pre-unwrap the whole scene, then you'll need to export the updated geometry with new UVs. Simply using a common FBX exporter won't work, because Unity also has a per-renderer [https://docs.unity3d.com/ScriptReference/Renderer-lightmapScaleOffset.html UV scale/offset] for lightmaps which is not exported. The purpose of this is to save memory: multiple instances of the same mesh can have the same UV buffer, but apply this scale/offset in the shader instead. To properly export the scene, you'll need to generate new unique meshes with scale/offset baked into their UV buffers. There is a [[Community_extensions#Make_Exportable|Make Exportable script]] to do that if you want. | ||
+ | |||
+ | ===Can Bakery be used at runtime?=== | ||
+ | |||
+ | Current Unity edition of Bakery is for editor use only, i.e. baking logic only works on editor side, and builds can only display baked lightmaps, not generate new ones. Technically baking can be invoked at runtime, but there is no finished/documented API for that. You would also have to manage scene exporting, atlas packing and texture importing manually. Runtime baking would also require a modern Nvidia GPU from your players and it would be up to you to ensure that builds don't go out of memory. Overall, it's doable, but with a lot of coding and it is not the best solution to the problem. If you are still interested in trying to bake something at runtime, you can contact me for C++ API headers. | ||
+ | |||
+ | |||
+ | ===What should I change in Unity Lighting window when working with Bakery?=== | ||
+ | |||
+ | Nothing, only Bakery settings will affect the lighting. The only exception is shadow color when using [[Manual#Subtractive|Subtractive]] lighting mode. |
Latest revision as of 09:55, 12 December 2022
Contents
- 1 Does it have realtime GI?
- 2 What about mixed lighting?
- 3 What about directional lightmaps?
- 4 Which platforms are supported?
- 5 Is it progressive? Does it show lightmap updates in real time?
- 6 Can Bakery take advantage of multiple GPUs?
- 7 Can I export lightmaps from Bakery to another program?
- 8 Can Bakery be used at runtime?
- 9 What should I change in Unity Lighting window when working with Bakery?
Does it have realtime GI?
No.
What about mixed lighting?
Yes! Bakery supports combining real-time direct lighting with baked indirect, as well as subtractive and shadowmask modes.
What about directional lightmaps?
Oh yes, we have quite a variety.
Which platforms are supported?
You can ship games with Bakery lightmaps on any platform. But for using Bakery you will need a 64-bit Windows (7+) machine with a Nvidia (6xx or newer) card. Check system requirements.
Is it progressive? Does it show lightmap updates in real time?
No. Just a progress bar.
Can Bakery take advantage of multiple GPUs?
Yes it can. Bakery is based on OptiX, so same rules apply:
Additionally, if you are baking in RTX mode, all GPUs should be RTX to work together.
Can I export lightmaps from Bakery to another program?
In short, yes, you can. There are two ways:
- 1. Fully unwrap your scene in your modeling package before baking (not individual objects, but the whole scene, in one or multiple atlases). Group objects sharing each atlas under a common parent object. Put Lightmap Groups with Original UV mode to these parent objects. Bake. This way the resulting lightmaps will have 100% original UV match. You can then get the baked .hdr textures and use them anywhere.
- 2. If you can't pre-unwrap the whole scene, then you'll need to export the updated geometry with new UVs. Simply using a common FBX exporter won't work, because Unity also has a per-renderer UV scale/offset for lightmaps which is not exported. The purpose of this is to save memory: multiple instances of the same mesh can have the same UV buffer, but apply this scale/offset in the shader instead. To properly export the scene, you'll need to generate new unique meshes with scale/offset baked into their UV buffers. There is a Make Exportable script to do that if you want.
Can Bakery be used at runtime?
Current Unity edition of Bakery is for editor use only, i.e. baking logic only works on editor side, and builds can only display baked lightmaps, not generate new ones. Technically baking can be invoked at runtime, but there is no finished/documented API for that. You would also have to manage scene exporting, atlas packing and texture importing manually. Runtime baking would also require a modern Nvidia GPU from your players and it would be up to you to ensure that builds don't go out of memory. Overall, it's doable, but with a lot of coding and it is not the best solution to the problem. If you are still interested in trying to bake something at runtime, you can contact me for C++ API headers.
What should I change in Unity Lighting window when working with Bakery?
Nothing, only Bakery settings will affect the lighting. The only exception is shadow color when using Subtractive lighting mode.