Unify render engine compatibility #55120

Closed
opened 2018-05-19 05:49:39 +02:00 by Caden Mitchell · 19 comments

Changes on GitHub.

Blender 2.8 is sort of a mess in terms of workflow. In Cycles, I may want to change "material" mode settings such as bloom, ssr, and sss. I have to go back to EEVEE in order to do this even if I am wanting to work on a raytracing project. So with this new UI addon I'm making called "Unifier" I hope to fix this issue by combining the options from Clay, Workbench, EEVEE, and Cycles, into one collection, so that everything can be done from one single engine. This way I can use Cycles (or possible a "Unified engine") for everything at once which will hopefully result in a better, more efficient workflow and experience.

The focus of this addon is Cycles. This is because Cycles has every other engine such as EEVEE and Workbench fully integrated into it as well as Cycles raytracing.

Known issues:
Currently, the addon moves everything to the "collections" section in the properties panel. This is only temporary and will likely change. Also, if you are using EEVEE you will lose the options in the render panel because they are moved to the Collections panel. Same with Clay. This will also change, I've only been working on the addon for two days at this point. A more elegant and simplified interface for the options may also be implemented too, but currently is not the priority. I may also be combining custom EEVEE material settings into it soon. Just not for the time being.

Version 0.1
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/8de9af1af4c0a5257ab3ee04a1ec5f6accf9f98f). Blender 2.8 is sort of a mess in terms of workflow. In Cycles, I may want to change "material" mode settings such as bloom, ssr, and sss. I have to go back to EEVEE in order to do this even if I am wanting to work on a raytracing project. So with this new UI addon I'm making called "Unifier" I hope to fix this issue by combining the options from Clay, Workbench, EEVEE, and Cycles, into one collection, so that everything can be done from one single engine. This way I can use Cycles (or possible a "Unified engine") for everything at once which will hopefully result in a better, more efficient workflow and experience. The focus of this addon is Cycles. This is because Cycles has every other engine such as EEVEE and Workbench fully integrated into it as well as Cycles raytracing. Known issues: Currently, the addon moves everything to the "collections" section in the properties panel. This is only temporary and will likely change. Also, if you are using EEVEE you will lose the options in the render panel because they are moved to the Collections panel. Same with Clay. This will also change, I've only been working on the addon for two days at this point. A more elegant and simplified interface for the options may also be implemented too, but currently is not the priority. I may also be combining custom EEVEE material settings into it soon. Just not for the time being. Version 0.1 [Unifier.py](https://archive.blender.org/developer/F3394663/Unifier.py)
Caden Mitchell self-assigned this 2018-05-19 05:49:39 +02:00
Author

Added subscriber: @CadenMitchell-3

Added subscriber: @CadenMitchell-3
Author

Changes on GitHub.

I've been tweaking it some and I finally have a toolbar layout working with additional access to WorkBench's shadow orientation options. The rest of EEVEE's functions will most likely be implemented in version 0.3.

Known issues:
Currently you can only change the post processing settings for EEVEE and the Clay settings and the WorkBench shadow orientation. There is no option for configuring materials in every engine, only Cycles and EEVEE. Lamps data unification is still on the TODO list currently.

Version 0.2:
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/f1f2ced2946e05eae7d6a4765bb057a3bac29b87). I've been tweaking it some and I finally have a toolbar layout working with additional access to WorkBench's shadow orientation options. The rest of EEVEE's functions will most likely be implemented in version 0.3. Known issues: Currently you can only change the post processing settings for EEVEE and the Clay settings and the WorkBench shadow orientation. There is no option for configuring materials in every engine, only Cycles and EEVEE. Lamps data unification is still on the TODO list currently. Version 0.2: [Unifier.py](https://archive.blender.org/developer/F3395007/Unifier.py)
Author

Changes on GitHub.

I've done more tweaking and I've finally got a decent result. The options are inside of the toolbar (and it doesn't mess up any render panel properties). Then there are shorter naming conventions, more readable code, and a better material system. With the new material system, you can now edit materials from Cycles, EEVEE, Clay, and Workbench. The node editor is still missing all the nodes sadly, but I'll see if I can sort this out too later. I've also ported the Cycles' "Viewport" setting in the material panel over to Clay, WorkBench, and EEVEE so that you can easily change this option from there too. I also removed the Specular and the Alpha options (for now) because the WorkBench engine doesn't support that right now.

Known issues:
There is no way of modifying lamp data from Clay or from WorkBench. In Cycles, it is not possible to edit the OpenGL (EEVEE) properties of lamps. In Cycles, the "Solid Viewport Colors" option should not be there. There is already an option for that (TODO: either remove the option from the menu or remove the old "Viewport" option which I would rather do.)

Version 0.3:
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/e825bae427f6cbdceb18a8e90f0f885aac1d249a). I've done more tweaking and I've finally got a decent result. The options are inside of the toolbar (and it doesn't mess up any render panel properties). Then there are shorter naming conventions, more readable code, and a better material system. With the new material system, you can now edit materials from Cycles, EEVEE, Clay, and Workbench. The node editor is still missing all the nodes sadly, but I'll see if I can sort this out too later. I've also ported the Cycles' "Viewport" setting in the material panel over to Clay, WorkBench, and EEVEE so that you can easily change this option from there too. I also removed the Specular and the Alpha options (for now) because the WorkBench engine doesn't support that right now. Known issues: There is no way of modifying lamp data from Clay or from WorkBench. In Cycles, it is not possible to edit the OpenGL (EEVEE) properties of lamps. In Cycles, the "Solid Viewport Colors" option should not be there. There is already an option for that (TODO: either remove the option from the menu or remove the old "Viewport" option which I would rather do.) Version 0.3: [Unifier.py](https://archive.blender.org/developer/F3395176/Unifier.py)
Author

Blender crashed here before I could finish but basically, I was showing off the unified shader system and render properties system.
deepin-screen-recorder_Navigator_20180519155956.gif

F3397702

Blender crashed here before I could finish but basically, I was showing off the unified shader system and render properties system. ![deepin-screen-recorder_Navigator_20180519155956.gif](https://archive.blender.org/developer/F3397702/deepin-screen-recorder_Navigator_20180519155956.gif) [F3397702](https://archive.blender.org/developer/F3397702/deepin-screen-recorder_Navigator_20180519155956.gif)
Author

Changes on GitHub.

This new version unifies the lamp options so that you will have access to EEVEE's lamp options from Cycles, Clay, and Workbench. Some UI improvements have also been made as well.

Known issues:
I would like to get the node editor fully working in Clay and WorkBench. I am still deciding whether to add the "Specular" and "Color split" nodes to Cycles though because I'm prioritizing Cycles and these shaders don't actually work in Cycles. It would still be nice to have as an option though. The same "Solid Viewport Colors" problem still persists in Cycles material settings. I will likely have this bug squashed by version 0.5. The node editor system may need to wait until version 0.6 though as I don't know how much work this task will actually be. Version 0.5 will likely just be interface cleanup and bug fixing.

Version 0.4:
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/e5a512e596bb38906fe8c475035d9f77d4710605). This new version unifies the lamp options so that you will have access to EEVEE's lamp options from Cycles, Clay, and Workbench. Some UI improvements have also been made as well. Known issues: I would like to get the node editor fully working in Clay and WorkBench. I am still deciding whether to add the "Specular" and "Color split" nodes to Cycles though because I'm prioritizing Cycles and these shaders don't actually work in Cycles. It would still be nice to have as an option though. The same "Solid Viewport Colors" problem still persists in Cycles material settings. I will likely have this bug squashed by version 0.5. The node editor system may need to wait until version 0.6 though as I don't know how much work this task will actually be. Version 0.5 will likely just be interface cleanup and bug fixing. Version 0.4: [Unifier.py](https://archive.blender.org/developer/F3411927/Unifier.py)
Member

Added subscribers: @dfelinto, @LazyDodo

Added subscribers: @dfelinto, @LazyDodo
Caden Mitchell was unassigned by Ray molenkamp 2018-05-21 00:45:57 +02:00
Dalai Felinto was assigned by Ray molenkamp 2018-05-21 00:45:57 +02:00
Member

@dfelinto i know bug reports are not allowed, but this doesn't quite fit that category, sooo... all yours! :)

@dfelinto i know bug reports are not allowed, but this doesn't quite fit that category, sooo... all yours! :)
Author

@LazyDodo Why has this task been reassigned to @dfelinto? Does this mean that the addon is going to be merged with the actual Blender 2.8 project?

@LazyDodo Why has this task been reassigned to @dfelinto? Does this mean that the addon is going to be merged with the actual Blender 2.8 project?
Member

it needs to be triaged, there a few people that triage tickets and the rules on 2.8 tickets are rather strict, no 2.8 bugs yet, this is however a community contribution, for which there are no rules, so I escalated it up to the 2.8 team they get to decide what they want to do with it.

it needs to be triaged, there a few people that triage tickets and the rules on 2.8 tickets are rather strict, no 2.8 bugs yet, this is however a community contribution, for which there are no rules, so I escalated it up to the 2.8 team they get to decide what they want to do with it.
Author

@LazyDodo Thank you then! And obviously the actual developers could do this much better than me. I guess this is mainly to lay out the groundwork for them to come back in and clean up later. I still have some design ideas for the project like maybe using the 3D view header sort of like the "shading" or "overlays" panel. I just don't know how because there's no documentation yet.

@LazyDodo Thank you then! And obviously the actual developers could do this much better than me. I guess this is mainly to lay out the groundwork for them to come back in and clean up later. I still have some design ideas for the project like maybe using the 3D view header sort of like the "shading" or "overlays" panel. I just don't know how because there's no documentation yet.
Author

I've created a GitHub for the project too. That way it may be easier to contribute if anyone is interested.

I've created a [GitHub for the project](https://github.com/CadenMitchell/Unifier) too. That way it may be easier to contribute if anyone is interested.
Author

Changes on GitHub.

After recently recompiling Blender 2.8 from source, Unifier 0.4 would not work which delayed the development. I had to update a couple classes in the code as well as fix a registering issue near the end of the script. This version mostly is meant to fix a couple bugs and update the features. In version 0.6 I will try to unify node editing in Clay and Workbench as well as enabling EEVEE material editing in Cycles.

Known issues:
None that I am aware of. This release was mostly correcting issues to make future development go smoother.

TODO: Attempt to get the node editor with every node working in all engines. Explore better ways of implementing the user interface. If anyone could teach me how to use the new popover menu style, please help me with that! I would like to make this addon integrate nicely with Blender's own UI.

Version 0.5:
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/c98eb7576643a6e9eaa3241cf98a135ccb42b54d). After recently recompiling Blender 2.8 from source, Unifier 0.4 would not work which delayed the development. I had to update a couple classes in the code as well as fix a registering issue near the end of the script. This version mostly is meant to fix a couple bugs and update the features. In version 0.6 I will try to unify node editing in Clay and Workbench as well as enabling EEVEE material editing in Cycles. Known issues: None that I am aware of. This release was mostly correcting issues to make future development go smoother. TODO: Attempt to get the node editor with every node working in all engines. Explore better ways of implementing the user interface. If anyone could teach me how to use the new popover menu style, please help me with that! I would like to make this addon integrate nicely with Blender's own UI. Version 0.5: [Unifier.py](https://archive.blender.org/developer/F3452975/Unifier.py)
Author

TODO: For version 0.6 get light probes working in Cycles. The tab appears empty. This should be an easy fix.

The node unification may take longer than anticipated. It appears to be a large project with lots of coding involved.

TODO: For version 0.6 get light probes working in Cycles. The tab appears empty. This should be an easy fix. The node unification may take longer than anticipated. It appears to be a large project with lots of coding involved.
Author

Changes on GitHub

After recompiling Blender 2.8, there were several broken menus, new features, and code updates that I had to patch. Almost every EEVEE post-processing filter had to be redone because they were broken to the point of being unusable and having empty menus. I finally merged the solid shading options into the Unifier tab as well as the new Material shading options. There is now a new menu entry called "Mat: Hair" as well as updated shadow options. The names in the Unifier tab have been shortened from Shade to Mat, Matcap to cap, and from Solid to Sol. Light probes can now be edited from any engine. There was an issue with lamps where you couldn't edit their EEVEE options from Cycles. Now the "OpenGL Lamp" option is available in any engine.

Known issues:
When editing lamp data, the "OpenGL Lamp" option is visible in engines that already has the option. This needs to be fixed by version 0.7. Blender 2.8 has a tendency to update so fast that the addon needs to be updated. If the addon looks broken when you use it, let me know what's wrong or missing and I'll fix it.

TODO:
Fix some bugs. Try to get a popover menu working in the TopBar or in the View3D header. Try to get nodes working (This has proven to be a massive challenge. Blender throws nonstop errors at me when I try to do this. It could end up being impossible.)

Version 0.6:
Unifier.py

Changes on [GitHub](https://github.com/CadenMitchell/Unifier/commit/a9aa8c595c5b047cea4ee9535ee099898c73a10f) After recompiling Blender 2.8, there were several broken menus, new features, and code updates that I had to patch. Almost every EEVEE post-processing filter had to be redone because they were broken to the point of being unusable and having empty menus. I finally merged the solid shading options into the Unifier tab as well as the new Material shading options. There is now a new menu entry called "Mat: Hair" as well as updated shadow options. The names in the Unifier tab have been shortened from Shade to Mat, Matcap to cap, and from Solid to Sol. Light probes can now be edited from any engine. There was an issue with lamps where you couldn't edit their EEVEE options from Cycles. Now the "OpenGL Lamp" option is available in any engine. Known issues: When editing lamp data, the "OpenGL Lamp" option is visible in engines that already has the option. This needs to be fixed by version 0.7. Blender 2.8 has a tendency to update so fast that the addon needs to be updated. If the addon looks broken when you use it, let me know what's wrong or missing and I'll fix it. TODO: Fix some bugs. Try to get a popover menu working in the TopBar or in the View3D header. Try to get nodes working (This has proven to be a massive challenge. Blender throws nonstop errors at me when I try to do this. It could end up being impossible.) Version 0.6: [Unifier.py](https://archive.blender.org/developer/F3527622/Unifier.py)
Author

@LazyDodo Has this been brought up with the 2.8 team? I've just fixed lots of bugs so it's probably the best time to test it. Otherwise, it may be much longer before the next release. If it is too late, they can just use version 1f693aefca instead.

@LazyDodo Has this been brought up with the 2.8 team? I've just fixed lots of bugs so it's probably the best time to test it. Otherwise, it may be much longer before the next release. If it is too late, they can just use version 1f693aefca0 instead.
Aaron Carlisle changed title from I will help unify Blender 2.80's engine comatibility to Unify render engine compatibility 2020-02-18 18:20:15 +01:00
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'

Added subscriber: @brecht

Added subscriber: @brecht

Changed status from 'Confirmed' to: 'Archived'

Changed status from 'Confirmed' to: 'Archived'

Archiving old task, we decided not to go with this design.

Archiving old task, we decided not to go with this design.
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#55120
No description provided.