Comments (2)
I originally got the matrix from the wgpu repo, though I can't find it anymore, but it makes sense to change it.
from learn-wgpu.
The matrix was actually correct like it was. cgmath::Matrix4::new()
has a HUGE pitfall! That is, its arguments are ordered in column-major order. So essentially, it creates a transpose version of the matrix you see, when formatting like this. I don't know why anyone thought this to be a good idea, but this is how it is...
I suggest changing it to this version, because its semantic meaning unambiguously conveys the real meaning of it. (There is no from_rows()
)
#[rustfmt::skip]
pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::from_cols(
cgmath::Vector4::new(1.0, 0.0, 0.0, 0.0),
cgmath::Vector4::new(0.0, 1.0, 0.0, 0.0),
cgmath::Vector4::new(0.0, 0.0, 0.5, 0.0),
cgmath::Vector4::new(0.0, 0.0, 0.5, 1.0),
);
See: https://docs.rs/cgmath/latest/src/cgmath/matrix.rs.html#285-297
from learn-wgpu.
Related Issues (20)
- Wrong view projection matrices HOT 4
- Panic when loading .obj without normals. HOT 3
- something wrong when run windowless HOT 1
- tutorial 11 explanation of srgb HOT 2
- Modification for the textures beginner tutorial. HOT 1
- Wgpu without a window for web
- Switch to glam from cgmath.
- Incorrect parameter for creation of WGPU Instance HOT 2
- EventLoop::new() return a Result(...) and need unwrap() to use.
- Windowing chapter wonβt work on some platforms HOT 4
- Running tutorial11-normals panics on macOS Sonoma after fresh checkout HOT 1
- some setup is needed for proper dev eniorment of the exmple HOT 2
- Compiler error in State::new() HOT 5
- The source code in the Dependencies and window chapters is outdated. HOT 1
- Surface chapter code contains compilation errors! HOT 2
- Update the window creation section HOT 12
- Fix your tutorial HOT 4
- Vertex jittering when a object is far from the origin HOT 1
- Cannot follow tutorial as is
- new_inner_size: No such field HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from learn-wgpu.