flame-engine/flame

[Flame 3D] Create more distinct types of light source

Aberta

#3.294 aberto em 2 de set. de 2024

 (3 comentários) (3 reações) (0 responsável)Dart (1.021 forks)batch import
enhancementflame_3dhacktoberfest

Métricas do repositório

Stars
 (10.575 estrelas)
Métricas de merge de PR
 (Mesclagem média 3d 22h) (6 fundiu PRs em 30d)

Description

What could be improved

More Details for Point Light and Further Breakdown of Ambient Light

Points should be visualized by a plain, circled dot. But they should have a radius parameter, such that when the radius is larger than zero, light will be emitted from a spherical surfaces with the specified radius.

Also, Lights with larger size should have softer shadows and specular highlights.

Why should this be improved

I've just watched Luan's Presentation on Flutter and Friends, 2024 and one part that stood to me is Light Sources.

I think it's very important, because Lights have significant importance on how things are rendered on screen. So we will need more distinct types of lights for better rendering accuracy, and a few new addtions;

  • Spot Light
  • Area Light
  • Sun Light

Spot Light

A Spot light should emit a cone-shaped beam of light from the tip of the cone, in a given direction.

spot shape and spotlights

It's constructor should have parameters like:

  1. Power [in watts]
  2. Radius
  3. Size in degree/radian
  4. Clip Start
  5. Blend

Area Light

Area light simulates light originating from a surface (or surface-like) emitter. For example, a TV screen, office neon lights, a window, or a cloudy sky are just a few types of area light.

It's constructor should have parameters like:

  1. Power [ in watts]
  2. Shape [Rectangle, Circle, Star, Ellipse etc]
  3. Size [Bounding Box for the Shape]

Sun Light

A sun light provides light of constant intensity emitted in a single direction from infinitely far away. A sun light can be very handy for a uniform clear daylight open-space illumination.

It's similar to the Ambient Light Luan described in his talks. But i believe there are quite some distinction;

Risks

I'm just an intern, or at best a Junior so I can't state with great accuracy the technical difficulty involved or risks; But one thing i can say it will change some API. Luckily the work on Flame 3D has just begun so not a big change like that;

More information

For more info, please visit blender reference for light soure

Other

  • Are you interested in working on a PR for this?

Guia do colaborador