EEVEE-Next #93220

Open
opened 1 year ago by fclem · 193 comments
fclem commented 1 year ago
Collaborator

This is a list of all the tasks planned for the complete rewrite of EEVEE's codebase.
Due to a change in requirements, this rewrite is planned for after the metal backend has landed in master.

Main features are:

  • Virtual Shadowmapping: Increases shadow resolution and maximum sharpness while keeping relatively low memory footprint.
  • Subsurface Scattering: New algorithm that eliminate light leaking between objects and supports per pixel radius.
  • High Light count support: Lights are now efficiently culled and there is virtually no limits to the maximum number of lights in a scene.
  • Panoramic Camera: By rendering up to 6 views we can cover any panoramic projection by reprojecting the sample.
  • Motion Blur: Now supports shutter curve.
  • Grease Pencil Object support: Grease pencil object are now treated as any other geometry and fully compatible with the shading pipeline.
  • Shading: Arbitrary number of BSDFs are now supported without major performance impact. Raytracing and SSS is no more restricted to one BSDF node.
  • Thickness output: This is a new output which control the thickness for translucency, refraction and volume shader.
  • Renderpass: All passes are rendered at once and do not need multiple geometry passes (except cryptomatte).

NOTE: Many of the features listed below have been implemented in the eevee-rewrite branch and are still being ported to master.
NOTE: Not all the feature listed here are required for the first release.

Film

  • Finish TAA reprojection. Motion vectors are now already possible in the viewport.
  • Sample accumulation. (issues with filter size < 1)
  • Reduce memory usage of weight buffers.

Camera

  • Port Depth Of Field.
  • Better DoF for panoramic.
  • Panoramic camera support could be improved to have better quality.
  • Panoramic camera. (still has issues with border blending of the different views)

Motion Blur

  • Motion steps data.
    • Mesh.
    • Curves (Hairs).
  • Shutter curve support for time steps.

Shading

Subsurface Scattering

  • New algorithm

Volumetric

  • Port World space volume.
  • Object space volume (high quality)
  • Object depth
  • Volume shadows (in shadowmaps) (may not work with virtual shadow maps tracing)

Raytracing

  • Screen Space Tracing port.
  • Glossy ray.
  • Diffuse ray.
  • Refraction ray.
  • Finish denoising & reprojection.
  • Reintroduce Half-res tracing.
  • Multibounce support.
  • Better fallback. (use filtered probes when possible)
  • Planar reflections or a fallback to them (or remove).

Light

  • Efficient Light culling
  • Rewrite light backend to support arbitrary light count
  • #68478 World Light Extraction

Shadows

  • #104472 Virtual Shadow mapping
  • Shadow tracing

Render Passes

  • #99390 (Eevee-next: Cryptomatte render pass)
  • Other Render passes

Grease Pencil:

  • Geometry support (missing dot support)
  • Default material support
  • Grease Pencil info node (still needs design)
This is a list of all the tasks planned for the complete rewrite of EEVEE's codebase. Due to a change in requirements, this rewrite is planned for after the metal backend has landed in master. Main features are: - **Virtual Shadowmapping**: Increases shadow resolution and maximum sharpness while keeping relatively low memory footprint. - **Subsurface Scattering**: New algorithm that eliminate light leaking between objects and supports per pixel radius. - **High Light count support**: Lights are now efficiently culled and there is virtually no limits to the maximum number of lights in a scene. - **Panoramic Camera**: By rendering up to 6 views we can cover any panoramic projection by reprojecting the sample. - **Motion Blur**: Now supports shutter curve. - **Grease Pencil Object support**: Grease pencil object are now treated as any other geometry and fully compatible with the shading pipeline. - **Shading**: Arbitrary number of BSDFs are now supported without major performance impact. Raytracing and SSS is no more restricted to one BSDF node. - **Thickness output**: This is a new output which control the thickness for translucency, refraction and volume shader. - **Renderpass**: All passes are rendered at once and do not need multiple geometry passes (except cryptomatte). NOTE: Many of the features listed below have been implemented in the `eevee-rewrite` branch and are still being ported to master. NOTE: Not all the feature listed here are required for the first release. ### Film - [x] Finish TAA reprojection. Motion vectors are now already possible in the viewport. - [x] Sample accumulation. (issues with filter size < 1) - [x] Reduce memory usage of weight buffers. ### Camera - [x] Port Depth Of Field. - [ ] Better DoF for panoramic. - [ ] Panoramic camera support could be improved to have better quality. - [ ] Panoramic camera. (still has issues with border blending of the different views) ### Motion Blur - [ ] Motion steps data. - [x] Mesh. - [ ] Curves (Hairs). - [x] Shutter curve support for time steps. ### Shading - [x] Memory usage reduction based on BSDFs used. - [x] Bump Mapping support - [ ] AO texture node support - [x] Shader to RGB support. (Need to have multiple BSDF tree evaluation) - [x] Vertex Displacement Mapping support - [ ] [D9792: [WIP] Eevee: Parallax Occlusion Mapping from Displacement Output](https://archive.blender.org/developer/D9792) - [x] Single pass HiZ using compute shader ### Subsurface Scattering - [x] New algorithm ### Volumetric - [ ] Port World space volume. - [ ] Object space volume (high quality) - [ ] Object depth - [ ] Volume shadows (in shadowmaps) (may not work with virtual shadow maps tracing) ### Raytracing - [ ] Screen Space Tracing port. - [ ] Glossy ray. - [ ] Diffuse ray. - [ ] Refraction ray. - [ ] Finish denoising & reprojection. - [ ] Reintroduce Half-res tracing. - [ ] Multibounce support. - [ ] Better fallback. (use filtered probes when possible) - [ ] Planar reflections or a fallback to them (or remove). ### Light - [x] Efficient Light culling - [x] Rewrite light backend to support arbitrary light count - [ ] #68478 World Light Extraction ### Shadows - [x] #104472 Virtual Shadow mapping - [ ] Shadow tracing ### Render Passes - [x] #99390 (Eevee-next: Cryptomatte render pass) - [x] Other Render passes ### Grease Pencil: - [ ] Geometry support (missing dot support) - [ ] Default material support - [ ] Grease Pencil info node (still needs design)
fclem self-assigned this 1 year ago
fclem commented 1 year ago
Poster
Collaborator

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

Changed status from 'Needs Triage' to: 'Confirmed'
fclem commented 1 year ago
Poster
Collaborator

Added subscriber: @fclem

Added subscriber: @fclem
EAW commented 1 year ago

Added subscriber: @EAW

Added subscriber: @EAW
lsscpp commented 1 year ago

Added subscriber: @lsscpp

Added subscriber: @lsscpp

Added subscriber: @geocentric_wage

Added subscriber: @geocentric_wage

Added subscriber: @Rawalanche

Added subscriber: @Rawalanche

Is this: https://developer.blender.org/T68478 really missing from the list or is it part of some other feature in the list?

I am asking because lack of almost any feature in this list is nowhere near as big of a pain point as the fact currently, when using any HDRI lighting, users have to keep two separate lighting setups for Eevee and Cycles, and also spend substantial amount of time creating Eevee HDRI light ligth based on rough calibration by the Cycles reference. Then, every time when switching between Eevee and Cycles, the user has to either swap the light rigs, or use the less physically based (with scene lights in place of HDRI hotspots) Eevee light right also with Cycles.

Furthermore, majority of users do not even posses the skill and knowledge to pull off an Eevee HDRI light rig that's at least remotely closer to correct HDRI illumination. Aside from getting the light intensities, colors and radii right, one also has to do numerous hacks with ray switching in world shader to ensure that directly visible environment is unclamped for tone mapping and bloom to work correctly, while at the same time making sure that diffuse contribution of the world shader is clamped so that the light is not doubled.

Solving this issue would significantly improve both Eevee workflow as well as image quality produced by users to average skill level, since diffuse illumination from HDRIs would not longer be extremely incorrect.

Unless the Ray Tracing section of this list includes diffuse illumination from the world shader with HDRI texture support, then even if every single feature on this list would be completed, most users would still produce images of significantly degraded quality unless they posses the quite advanced knowledge to work around it described above.

Is this: https://developer.blender.org/T68478 really missing from the list or is it part of some other feature in the list? I am asking because lack of almost any feature in this list is nowhere near as big of a pain point as the fact currently, when using any HDRI lighting, users have to keep two separate lighting setups for Eevee and Cycles, and also spend substantial amount of time creating Eevee HDRI light ligth based on rough calibration by the Cycles reference. Then, every time when switching between Eevee and Cycles, the user has to either swap the light rigs, or use the less physically based (with scene lights in place of HDRI hotspots) Eevee light right also with Cycles. Furthermore, majority of users do not even posses the skill and knowledge to pull off an Eevee HDRI light rig that's at least remotely closer to correct HDRI illumination. Aside from getting the light intensities, colors and radii right, one also has to do numerous hacks with ray switching in world shader to ensure that directly visible environment is unclamped for tone mapping and bloom to work correctly, while at the same time making sure that diffuse contribution of the world shader is clamped so that the light is not doubled. Solving this issue would significantly improve both Eevee workflow as well as image quality produced by users to average skill level, since diffuse illumination from HDRIs would not longer be extremely incorrect. Unless the Ray Tracing section of this list includes diffuse illumination from the world shader with HDRI texture support, then even if every single feature on this list would be completed, most users would still produce images of significantly degraded quality unless they posses the quite advanced knowledge to work around it described above.
fclem commented 1 year ago
Poster
Collaborator

@Rawalanche I will add it to the list of features that may be tackled after the rewrite. I would not consider it a blocker since it is a new feature and is not fundamentally a missing part of the pipeline.

The Raytracing changes does improve this use case but still introduce too much noise. So I think sun light extraction is still a needed feature.

@Rawalanche I will add it to the list of features that may be tackled after the rewrite. I would not consider it a blocker since it is a new feature and is not fundamentally a missing part of the pipeline. The Raytracing changes does improve this use case but still introduce too much noise. So I think sun light extraction is still a needed feature.

Added subscriber: @TheRedWaxPolice

Added subscriber: @TheRedWaxPolice

Added subscriber: @PhlixFer

Added subscriber: @PhlixFer

Added subscriber: @JohnCox-3

Added subscriber: @JohnCox-3

Added subscriber: @AlexeyAdamitsky

Added subscriber: @AlexeyAdamitsky
Jaydead commented 1 year ago

Added subscriber: @Jaydead

Added subscriber: @Jaydead
Ghost commented 1 year ago

Added subscriber: @dabuxian

Added subscriber: @dabuxian
sbchild commented 1 year ago

Added subscriber: @sbchild

Added subscriber: @sbchild
s12a commented 1 year ago

Added subscriber: @s12a

Added subscriber: @s12a

Added subscriber: @SergeyHerr

Added subscriber: @SergeyHerr
mavek commented 1 year ago

Added subscriber: @mavek

Added subscriber: @mavek
Baga-4 commented 1 year ago

Added subscriber: @Baga-4

Added subscriber: @Baga-4
dodo-2 commented 1 year ago

Added subscriber: @dodo-2

Added subscriber: @dodo-2

Added subscriber: @ThomasToo

Added subscriber: @ThomasToo

This comment was removed by @ThomasToo

*This comment was removed by @ThomasToo*
Collaborator

Added subscriber: @Jeroen-Bakker

Added subscriber: @Jeroen-Bakker

Added subscriber: @AndyCuccaro

Added subscriber: @AndyCuccaro

Added subscriber: @AD_Blend-69420

Added subscriber: @AD_Blend-69420
Owner

Added subscriber: @ThomasDinges

Added subscriber: @ThomasDinges

Added subscriber: @JacobMerrill-1

Added subscriber: @JacobMerrill-1

Added subscriber: @frogstomp-4

Added subscriber: @frogstomp-4
RedMser commented 1 year ago

Added subscriber: @RedMser

Added subscriber: @RedMser

Added subscriber: @Caden-Mitchell

Added subscriber: @Caden-Mitchell

This comment was removed by @JacobMerrill-1

*This comment was removed by @JacobMerrill-1*
Eary commented 1 year ago

Added subscriber: @Eary

Added subscriber: @Eary

This comment was removed by @JacobMerrill-1

*This comment was removed by @JacobMerrill-1*
Owner

Moderation note This is not the proper place for user feedback or feature requests. Please check this for appropriate places: https://wiki.blender.org/wiki/Communication/Contact#User_Feedback_and_Requests

**Moderation note** This is not the proper place for user feedback or feature requests. Please check this for appropriate places: https://wiki.blender.org/wiki/Communication/Contact#User_Feedback_and_Requests

Added subscriber: @Low_Polygon42

Added subscriber: @Low_Polygon42

Added subscriber: @GeorgiaPacific

Added subscriber: @GeorgiaPacific

Added subscriber: @Blendork

Added subscriber: @Blendork

Added subscriber: @browneggz

Added subscriber: @browneggz

Added subscriber: @2905710881

Added subscriber: @2905710881

This comment was removed by @2905710881

*This comment was removed by @2905710881*

Added subscriber: @viadvena

Added subscriber: @viadvena

Added subscriber: @Georgefly

Added subscriber: @Georgefly

Added subscriber: @EvertonSchneider

Added subscriber: @EvertonSchneider

Added subscriber: @Prodeous

Added subscriber: @Prodeous
Yuro commented 1 year ago

Added subscriber: @Yuro

Added subscriber: @Yuro

Added subscriber: @winnertakesteve-1

Added subscriber: @winnertakesteve-1

Added subscriber: @pixeltrain3d

Added subscriber: @pixeltrain3d
Defka commented 1 year ago

Added subscriber: @Defka

Added subscriber: @Defka
Zeirus commented 1 year ago

Added subscriber: @Zeirus

Added subscriber: @Zeirus
dodo-2 commented 1 year ago

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
dodo-2 commented 1 year ago

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*

Added subscriber: @TheCrowdedOne

Added subscriber: @TheCrowdedOne

Added subscriber: @ephraimpauli

Added subscriber: @ephraimpauli

Added subscriber: @blenderrocket

Added subscriber: @blenderrocket

Added subscriber: @2046411367

Added subscriber: @2046411367

Added subscriber: @homeworker

Added subscriber: @homeworker

Added subscriber: @Confabulatori

Added subscriber: @Confabulatori

This comment was removed by @2905710881

*This comment was removed by @2905710881*
Owner

Again, please don't use this task for feature requests or user questions! There are other channels for this: https://wiki.blender.org/wiki/Communication/Contact#User_Feedback_and_Requests

Again, please don't use this task for feature requests or user questions! There are other channels for this: https://wiki.blender.org/wiki/Communication/Contact#User_Feedback_and_Requests
dodo-2 commented 1 year ago

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
bent commented 1 year ago

Added subscriber: @bent

Added subscriber: @bent

Added subscriber: @Festivity

Added subscriber: @Festivity
VDC commented 1 year ago

Added subscriber: @VDC

Added subscriber: @VDC

Added subscriber: @Motiomancer

Added subscriber: @Motiomancer

Added subscriber: @SteffenD

Added subscriber: @SteffenD

This comment was removed by @TheCrowdedOne

*This comment was removed by @TheCrowdedOne*
dodo-2 commented 1 year ago

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*

Added subscriber: @Guilherme-Emerich-Setubal

Added subscriber: @Guilherme-Emerich-Setubal

Added subscriber: @LouisLithium

Added subscriber: @LouisLithium

Added subscriber: @matthewg.3d

Added subscriber: @matthewg.3d
set9 commented 1 year ago

Added subscriber: @set9

Added subscriber: @set9
Dangry commented 1 year ago

Added subscriber: @Dangry

Added subscriber: @Dangry

Added subscriber: @iloveyehan

Added subscriber: @iloveyehan

This comment was removed by @JacobMerrill-1

*This comment was removed by @JacobMerrill-1*
fanny commented 1 year ago

Added subscriber: @fanny

Added subscriber: @fanny

Added subscriber: @ShenCiao-2

Added subscriber: @ShenCiao-2
leomid commented 1 year ago

Added subscriber: @leomid

Added subscriber: @leomid

Added subscriber: @Imaginer

Added subscriber: @Imaginer
maylog commented 1 year ago

Added subscriber: @maylog

Added subscriber: @maylog

Added subscriber: @Eliot-Mack

Added subscriber: @Eliot-Mack

This comment was removed by @JacobMerrill-1

*This comment was removed by @JacobMerrill-1*

Added subscriber: @Steve-Hanff

Added subscriber: @Steve-Hanff
Garek commented 1 year ago

Added subscriber: @Garek

Added subscriber: @Garek

Added subscriber: @RomanKuz-4

Added subscriber: @RomanKuz-4

Added subscriber: @DuarteRamos

Added subscriber: @DuarteRamos

Added subscriber: @ShyDugong

Added subscriber: @ShyDugong

Added subscriber: @Emi_Martinez

Added subscriber: @Emi_Martinez

Added subscriber: @StojoArt

Added subscriber: @StojoArt

Added subscriber: @lictex_1

Added subscriber: @lictex_1

Added subscriber: @jaysteven

Added subscriber: @jaysteven
nlate commented 1 year ago

Added subscriber: @nlate

Added subscriber: @nlate
Mounir commented 1 year ago

Added subscriber: @Mounir

Added subscriber: @Mounir

Added subscriber: @ClinToch

Added subscriber: @ClinToch

This comment was removed by @ClinToch

*This comment was removed by @ClinToch*

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
dvi commented 12 months ago

Added subscriber: @dvi

Added subscriber: @dvi
dvi commented 12 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*

This comment was removed by @Defka

*This comment was removed by @Defka*
dvi commented 12 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*
Owner

Please keep this task on topic! This task is for developers and should focus on code design and review. Please refrain from further user questions, including asking for a build, asking for a merge ETA, examples, comparison with other software and so on... It is also too early for bug reports. Thank you for your understanding.

Please keep this task on topic! This task is for developers and should focus on code design and review. Please refrain from further user questions, including asking for a build, asking for a merge ETA, examples, comparison with other software and so on... It is also too early for bug reports. Thank you for your understanding.

Added subscriber: @brurpo

Added subscriber: @brurpo
cmzw commented 12 months ago

Added subscriber: @cmzw

Added subscriber: @cmzw

Added subscriber: @Aiden-McKown

Added subscriber: @Aiden-McKown
dvi commented 11 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*

This comment was removed by @Low_Polygon42

*This comment was removed by @Low_Polygon42*
dvi commented 11 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*

Added subscriber: @AditiaA.Pratama

Added subscriber: @AditiaA.Pratama

This comment was removed by @AD_Blend-69420

*This comment was removed by @AD_Blend-69420*
dvi commented 11 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*
Owner

Added subscriber: @brecht

Added subscriber: @brecht

Added subscriber: @zNight

Added subscriber: @zNight

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
Owner

This comment was removed by @ThomasDinges

*This comment was removed by @ThomasDinges*
dvi commented 11 months ago

This comment was removed by @dvi

*This comment was removed by @dvi*
Owner

Like any other online platform, there are rules here as well. I explained this several times before. One again:
Please keep this task on topic! This task is for developers and should focus on code design and review. Please refrain from further user questions, including asking for a build, asking for a merge ETA, examples, comparison with other software and so on... It is also too early for bug reports. Thank you for your understanding.

Or in more simple words: If you are not a developer, working on the EEVEE rewrite, this is NOT the right place for comments.

Please help to keep this platform clean for developers and use places like blenderartists for user discussions. Thanks.

Like any other online platform, there are rules here as well. I explained this several times before. One again: `Please keep this task on topic! This task is for developers and should focus on code design and review. Please refrain from further user questions, including asking for a build, asking for a merge ETA, examples, comparison with other software and so on... It is also too early for bug reports. Thank you for your understanding.` Or in more simple words: If you are not a developer, working on the EEVEE rewrite, this is NOT the right place for comments. Please help to keep this platform clean for developers and use places like blenderartists for user discussions. Thanks.

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*

Added subscriber: @Stat_Headcrabed

Added subscriber: @Stat_Headcrabed
AM-1 commented 11 months ago

Added subscriber: @AM-1

Added subscriber: @AM-1

Added subscriber: @johannes.wilde

Added subscriber: @johannes.wilde

Added subscriber: @Fynn-Ribbeck

Added subscriber: @Fynn-Ribbeck

Added subscriber: @Olliver

Added subscriber: @Olliver

This comment was removed by @Olliver

*This comment was removed by @Olliver*

Added subscriber: @EvaVomhoff

Added subscriber: @EvaVomhoff

This comment was removed by @TheCrowdedOne

*This comment was removed by @TheCrowdedOne*

This comment was removed by @Caden-Mitchell

*This comment was removed by @Caden-Mitchell*

Added subscriber: @hzuika

Added subscriber: @hzuika
Poster
Collaborator

An update is long overdue.

This task has accumulated many delay due to multiple things.

The major reason is that during the middle of the rewrite, I was facing major technical difficulty caused by limitations from our GL 3.3 requirement. So at some point I took the decision to make use of more modern techniques and drop support from older hardware. We are aiming to require GL 4.3 capable hardware in the near future. However this means that we cannot rely on the GL implementation on Apple computers. So I had to sidetrack to another project to make sure that shaders will be compatible with Vulkan and Metal (D13360).

Comming back to the rewrite I had to redo many things a second time to use the more modern way to do things. This was needed for performance reasons.

But with all the added delay and without much real testing possible (because of feature incompleteness and plethora of TODOs) it was starting to feel like a never ending project. So we decided to start pushing the developpement into master in an attempt to guide the developpement using feedback from the Blender Studio. The new implementation is hidden under a new experimental option (59f53f5802). My goal with this is to merge the eevee-rewrite branch into master bit by bit making sure each feature is polished. The GPU module changes needed are already in master.

I'll resume my weekly reports on my [wiki section ]] for the week to week updates. For important milestones and feedback, I created [ https:*devtalk.blender.org/t/eevee-next/23570 | this topic on devtalk .

I would like to thank everyone who showed interest in this task.

An update is long overdue. This task has accumulated many delay due to multiple things. The major reason is that during the middle of the rewrite, I was facing major technical difficulty caused by limitations from our GL 3.3 requirement. So at some point I took the decision to make use of more modern techniques and drop support from older hardware. We are aiming to require GL 4.3 capable hardware in the near future. However this means that we cannot rely on the GL implementation on Apple computers. So I had to sidetrack to another project to make sure that shaders will be compatible with Vulkan and Metal ([D13360](https://archive.blender.org/developer/D13360)). Comming back to the rewrite I had to redo many things a second time to use the more modern way to do things. This was needed for performance reasons. But with all the added delay and without much real testing possible (because of feature incompleteness and plethora of TODOs) it was starting to feel like a never ending project. So we decided to start pushing the developpement into `master` in an attempt to guide the developpement using feedback from the Blender Studio. The new implementation is hidden under a new experimental option (59f53f5802). My goal with this is to merge the `eevee-rewrite` branch into master bit by bit making sure each feature is polished. The GPU module changes needed are already in master. I'll resume my weekly reports on my [wiki section ]] for the week to week updates. For important milestones and feedback, I created [[ https:*devtalk.blender.org/t/eevee-next/23570 | this topic on devtalk ](https:*wiki.blender.org/wiki/User:Hypersomniac#Weekly_Reports). I would like to thank everyone who showed interest in this task.

Added subscriber: @Alaska

Added subscriber: @Alaska

In #93220#1327240, @fclem wrote:
The major reason is that during the middle of the rewrite, I was facing major technical difficulty caused by limitations from our GL 3.3 requirement. So at some point I took the decision to make use of more modern techniques and drop support from older hardware. We are aiming to require GL 4.3 capable hardware in the near future. However this means that we cannot rely on the GL implementation on Apple computers. So I had to sidetrack to another project to make sure that shaders will be compatible with Vulkan and Metal (D13360).

Possibly a dumb question, but if Apple support means having to sidetrack to support Vulkan and Metal, why not just use Vulkan as the base for all platforms instead of GL 4.3? Or did I misunderstand something?

> In #93220#1327240, @fclem wrote: > The major reason is that during the middle of the rewrite, I was facing major technical difficulty caused by limitations from our GL 3.3 requirement. So at some point I took the decision to make use of more modern techniques and drop support from older hardware. We are aiming to require GL 4.3 capable hardware in the near future. However this means that we cannot rely on the GL implementation on Apple computers. So I had to sidetrack to another project to make sure that shaders will be compatible with Vulkan and Metal ([D13360](https://archive.blender.org/developer/D13360)). Possibly a dumb question, but if Apple support means having to sidetrack to support Vulkan and Metal, why not just use Vulkan as the base for all platforms instead of GL 4.3? Or did I misunderstand something?
Collaborator

@Rawalanche having shader syntax compatible with vulkan is an important step into this direction. Having a production ready fully working vulkan backend takes (a lot) more time. Bumping the version to OpenGL 4.3 would make it easier to transition to vulkan.

@Rawalanche having shader syntax compatible with vulkan is an important step into this direction. Having a production ready fully working vulkan backend takes (a lot) more time. Bumping the version to OpenGL 4.3 would make it easier to transition to vulkan.

In #93220#1327526, @Jeroen-Bakker wrote:
@Rawalanche having shader syntax compatible with vulkan is an important step into this direction. Having a production ready fully working vulkan backend takes (a lot) more time. Bumping the version to OpenGL 4.3 would make it easier to transition to vulkan.

I see. I did not know upgrading GL version is/could be just intermediate step on the road to Vulkan backend. That's why I asked :)

> In #93220#1327526, @Jeroen-Bakker wrote: > @Rawalanche having shader syntax compatible with vulkan is an important step into this direction. Having a production ready fully working vulkan backend takes (a lot) more time. Bumping the version to OpenGL 4.3 would make it easier to transition to vulkan. I see. I did not know upgrading GL version is/could be just intermediate step on the road to Vulkan backend. That's why I asked :)

Added subscriber: @insideitall

Added subscriber: @insideitall

Thank you so much Clement, this was all I wanted! I wish you the best of luck with the project, I know nothing about program development but an eevee rewrite sounds like a lot of work. Also sorry Thomas for all the trouble, just wanted to thank Clement :D

Thank you so much Clement, this was all I wanted! I wish you the best of luck with the project, I know nothing about program development but an eevee rewrite sounds like a lot of work. Also sorry Thomas for all the trouble, just wanted to thank Clement :D

Added subscriber: @Sparazza

Added subscriber: @Sparazza

Added subscriber: @LasseFoster-2

Added subscriber: @LasseFoster-2

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
AM-1 commented 10 months ago

Removed subscriber: @AM-1

Removed subscriber: @AM-1

This comment was removed by @JacobMerrill-1

*This comment was removed by @JacobMerrill-1*

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*

Added subscriber: @Zelo101

Added subscriber: @Zelo101

Added subscriber: @GaryRitchie

Added subscriber: @GaryRitchie

Added subscriber: @SamGreen

Added subscriber: @SamGreen

Added subscriber: @Macilvoy

Added subscriber: @Macilvoy

Added subscriber: @TroyAC

Added subscriber: @TroyAC

This comment was removed by @TroyAC

*This comment was removed by @TroyAC*

Added subscriber: @Sean-Boyle

Added subscriber: @Sean-Boyle

Added subscriber: @MrAlwis

Added subscriber: @MrAlwis

Removed subscriber: @StojoArt

Removed subscriber: @StojoArt

Added subscriber: @vegetablescum

Added subscriber: @vegetablescum

This comment was removed by @vegetablescum

*This comment was removed by @vegetablescum*
Collaborator

Added subscriber: @zanqdo

Added subscriber: @zanqdo

Added subscriber: @Hannah-Umit

Added subscriber: @Hannah-Umit
Collaborator

Added subscriber: @mod_moder

Added subscriber: @mod_moder

Added subscriber: @finalflasher

Added subscriber: @finalflasher

Added subscriber: @RobertWesseling

Added subscriber: @RobertWesseling

Removed subscriber: @Sean-Boyle

Removed subscriber: @Sean-Boyle
hipda commented 9 months ago

Added subscriber: @hipda

Added subscriber: @hipda
hipda commented 9 months ago

This comment was removed by @hipda

*This comment was removed by @hipda*

Added subscriber: @osayami

Added subscriber: @osayami
bent commented 9 months ago

Removed subscriber: @bent

Removed subscriber: @bent

Added subscriber: @Striletsky

Added subscriber: @Striletsky

This comment was removed by @dodo-2

*This comment was removed by @dodo-2*
NEEO commented 8 months ago

Added subscriber: @NEEO

Added subscriber: @NEEO

Added subscriber: @Soichi-Sugano

Added subscriber: @Soichi-Sugano

Added subscriber: @hamza-el-barmaki

Added subscriber: @hamza-el-barmaki

This comment was removed by @hamza-el-barmaki

*This comment was removed by @hamza-el-barmaki*

Added subscriber: @satishgoda1

Added subscriber: @satishgoda1

Added subscriber: @baybaypras

Added subscriber: @baybaypras

Added subscriber: @Spundun-Bhatt

Added subscriber: @Spundun-Bhatt

Added subscriber: @Benni-Merz

Added subscriber: @Benni-Merz

Added subscriber: @DARRINALDER

Added subscriber: @DARRINALDER

Added subscriber: @Horizon42

Added subscriber: @Horizon42

Added subscriber: @zhanghua

Added subscriber: @zhanghua

Removed subscriber: @Low_Polygon42

Removed subscriber: @Low_Polygon42
Joe_W commented 7 months ago

Added subscriber: @Joe_W

Added subscriber: @Joe_W

Added subscriber: @Yacine-Teach

Added subscriber: @Yacine-Teach
Nik-9 commented 7 months ago

Added subscriber: @Nik-9

Added subscriber: @Nik-9

Added subscriber: @Basarchitects

Added subscriber: @Basarchitects

Added subscriber: @digital0785

Added subscriber: @digital0785

Added subscriber: @intracube

Added subscriber: @intracube

Added subscriber: @Cigitia

Added subscriber: @Cigitia
Asger commented 6 months ago

Added subscriber: @Asger

Added subscriber: @Asger

Added subscriber: @jpburns

Added subscriber: @jpburns

Added subscriber: @Austin-Berenyi

Added subscriber: @Austin-Berenyi

Added subscriber: @SpectreFirst

Added subscriber: @SpectreFirst

Added subscriber: @Nico-Traber

Added subscriber: @Nico-Traber

Added subscriber: @Strike_Digital

Added subscriber: @Strike_Digital

Added subscriber: @cueqzapper

Added subscriber: @cueqzapper

Added subscriber: @Nabarun

Added subscriber: @Nabarun

Added subscriber: @Jarrett-Johnson

Added subscriber: @Jarrett-Johnson

Added subscriber: @JanErik

Added subscriber: @JanErik
heini commented 1 month ago

Added subscriber: @heini

Added subscriber: @heini

Added subscriber: @julien.hondaa

Added subscriber: @julien.hondaa
fclem added this to the EEVEE & Viewport project 2 days ago
fclem changed title from EEVEE rewrite to EEVEE-Next 2 days ago
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/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
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/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
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
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
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 & Devices
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 Information 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 Assignees
139 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#93220
Loading…
There is no content yet.