Attach depth array layers and cube faces with the matching GL call
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 78/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- cpp
- Lĩnh vực
- backend, computer-graphics
Hướng nghiên cứu
Bắt đầu tại source/renderer/ore/gl/ore_context_gl.cpp, ở ContextGL::beginRenderPass, và so sánh cách xử lý attachment độ sâu với attachment màu được đề cập trong issue. Kiểm tra cách các mặt khối lập phương và layer của mảng 2D chọn các lệnh gọi attachment cùng giá trị layer hoặc mip. Hoàn tất khi các view khối lập phương và mảng độ sâu được gắn bằng các lệnh gọi GL tương ứng.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Attach depth array layers and cube faces with the matching GL call.
- source/renderer/ore/gl/ore_context_gl.cpp: Ore GL beginRenderPass: attach a layer of a depth array or cube face with the matching call, as color attachments do, instead of always as a 2D texture
diff --git a/source/renderer/ore/gl/ore_context_gl.cpp b/source/renderer/ore/gl/ore_context_gl.cpp
index f6ca307d474486aef4fba23b1785f7b7de0c1251..539a2c5ac2afc290d517afb2284044096bf04669 100644
--- a/source/renderer/ore/gl/ore_context_gl.cpp
+++ b/source/renderer/ore/gl/ore_context_gl.cpp
@@ -1264,6 +1264,24 @@ std::unique_ptr<RenderPass> ContextGL::beginRenderPass(
GL_RENDERBUFFER,
depthTexGL->m_glRenderbuffer);
}
+ else if (depthTexGL->type() == TextureType::cube)
+ {
+ glFramebufferTexture2D(
+ GL_FRAMEBUFFER,
+ depthAttachment,
+ GL_TEXTURE_CUBE_MAP_POSITIVE_X + desc.depthStencil.view->baseLayer(),
+ depthTexGL->m_glTexture,
+ desc.depthStencil.view->baseMipLevel());
+ }
+ else if (depthTexGL->type() == TextureType::array2D)
+ {
+ glFramebufferTextureLayer(
+ GL_FRAMEBUFFER,
+ depthAttachment,
+ depthTexGL->m_glTexture,
+ desc.depthStencil.view->baseMipLevel(),
+ desc.depthStencil.view->baseLayer());
+ }
else
{
glFramebufferTexture2D(
- Ngôn ngữ chính
- C++
- Star
- 1.2k
- Fork
- 133
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của rive-app/rive-runtime
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 83/100
rive-app/rive-runtime#143 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
rive-app/rive-runtime#140 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 91/100
rive-app/rive-runtime#137 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
rive-app/rive-runtime#134 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
rive-app/rive-runtime#133 ·
Tất cả issue của rive-app/rive-runtime
Issue tương tự
-
parse_selu lowering loses catastrophic cancellation → silent 0.0 for moderate positive inputsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
ROCm/AMDMIGraphX#5490 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
arvidn/libtorrent#9126 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Sunrisepeak/mcpp-language-server#80 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
#2754 make deepseek api not workĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
xiaoyifang/goldendict-ng#3148 ·
Maintainer thường phản hồi trong vòng 1 ngày