bevyengine / bevyengine/bevy

Double sided doesn't work on transmissive material

Open
#12,446 0 comments 0 reactions 0 assignees View on GitHub
A-Rendering C-Bug
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## Bevy version
0.13

## Relevant system information
`cargo 1.77.0-nightly (1ae631085 2024-01-17)`

`AdapterInfo { name: "Apple M1 Pro", vendor: 0, device: 0, device_type: IntegratedGpu, driver: "", driver_info: "", backend: Metal }`

## What you did

### Repo to replicate this
### https://github.com/franklinblanco/bevy_transmission_scene

I copied the transmission example and changed standard material on a few objects to to this:

```rust
materials.add(StandardMaterial {
base_color: Color::Rgba { red: 0.455, green: 1.0, blue: 0.905, alpha: 1.0 },
specular_transmission: 0.95,
diffuse_transmission: 0.0,
thickness: 1.8,
ior: 1.0,
perceptual_roughness: 0.05,
reflectance: 0.5,
double_sided: true,
..default()
});
```

Notice the double_sided: true

## What went wrong

When you go in and look at the plane it looks like this (nothing wrong yet)

![Screenshot 2024-03-12 at 6 03 42 PM](https://github.com/bevyengine/bevy/assets/72827992/d492167b-dcee-4c62-8234-c05baef13f21)

When you rotate the camera to be behind the plane though:

![Screenshot 2024-03-12 at 6 04 21 PM](https://github.com/bevyengine/bevy/assets/72827992/cb8f6c43-7ff0-4bdd-ac18-7d22506ff6d8)

## Additional information

Thanks to the bevy devs for your hard work!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.