Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/younghakim7/rust_avian_training

gamedev(Rust Game Bevy & avian Physical Engine)
https://github.com/younghakim7/rust_avian_training

avian bevy rust

Last synced: 3 months ago
JSON representation

gamedev(Rust Game Bevy & avian Physical Engine)

Awesome Lists containing this project

README

        

# rust_avian_training

# Bevy 3d Third Person Tutorial | Part 4 | Third Person Camera | TheDevBlog
- https://youtu.be/__8rhqHc82I?si=TUmJjkxtO74FuLO9
- https://github.com/AndrewCS149/bevy_tutorials/tree/master/third_person_beginner/tutorial_4

- 카메라를 자유롭게 플레이어 움직이는데로 카메라 움직이기
- https://github.com/AndrewCS149/bevy_third_person_camera

# avian2d & 3d NVIDIA저작권때문에 살짝 코드 바꿔서 나옴.(xpbd)

- https://docs.rs/avian2d/latest/avian2d/
- https://github.com/Jondolf/avian

- 2D Examples
- https://github.com/Jondolf/avian/tree/main/crates/avian2d/examples

- 3D Examples
- https://github.com/Jondolf/avian/tree/main/crates/avian3d/examples

# Introducing Avian Physics 0.1
The next evolution of ECS-driven physics for Bevy
- July 6, 2024
- https://joonaa.dev/blog/06/avian-0-1


# Study
- 여기부터 보면될듯
- https://docs.rs/avian3d/0.1.1/avian3d/index.html#table-of-contents
- https://docs.rs/avian3d/0.1.1/avian3d/index.html
- https://docs.rs/avian2d/0.1.1/avian2d/index.html


# 기본틀(3d 물리엔진)

- Cargo.toml
```toml
[dependencies]
bevy = "0.14.0"
avian3d = { git = "https://github.com/Jondolf/avian", branch = "main" }

[profile.dev]
opt-level = 1

[profile.dev.package."*"]
opt-level = 3
```

```
cargo add avian3d
```
- https://crates.io/crates/avian3d

# 기본틀(2d물리엔진)

- Cargo.toml
```toml
# For 2D applications:
[dependencies]
avian2d = "0.1"

# For 3D applications:
[dependencies]
avian3d = "0.1"

# If you want to use the most up-to-date version, you can follow the main branch:
[dependencies]
avian3d = { git = "https://github.com/Jondolf/avian", branch = "main" }

[profile.dev]
opt-level = 1

[profile.dev.package."*"]
opt-level = 3
```
- https://github.com/Jondolf/avian

```
cargo add avian2d
```
- https://crates.io/crates/avian2d


# 케릭터 땅과 마진 맞추는 방법
- https://docs.rs/avian2d/latest/avian2d/dynamics/ccd/index.html

- 한국분이 질문한거 해결 이슈
- https://github.com/Jondolf/avian/issues/412

# What Is CCD?

- https://docs.rs/avian2d/latest/avian2d/dynamics/ccd/index.html

Physics simulation is typically done in a discrete manner.
At the beginning of each physics frame, the simulation checks for collisions,
and if none are found for a given rigid body, it is free to move according to
its velocity and the size of the timestep.


This generally works well for large or slowly moving objects, but fast and small
objects can pass through thin geometry such as walls and triangle meshes.
This phenomenon is often called tunneling.

![Screenshot from 2024-07-13 15-40-07](https://github.com/user-attachments/assets/9b4d0e16-a068-47be-85db-7e6ea9acf0cf)
Discrete
![Screenshot from 2024-07-13 15-40-14](https://github.com/user-attachments/assets/09a091b1-c45f-4b01-a973-51bf0b4e8863)
![Screenshot from 2024-07-13 15-40-24](https://github.com/user-attachments/assets/fdef78dc-09ad-43c2-a231-7f8167484e1e)
![Screenshot from 2024-07-13 15-40-32](https://github.com/user-attachments/assets/87bb7bed-1b8d-4e2c-97da-365c1bb2c945)