«opengl» etiketlenmiş sorular

OpenGL grafik kitaplığının kullanımını içeren sorular için.

9
Yeni grafik programcıları OpenGL yerine Vulkan'ı mı öğrenmeli?
Wiki Gönderen : "Vulkan API başlangıçta Khrono tarafından 'yeni nesil OpenGL girişimi' olarak sevk edildi", o olduğuna ve "geriye olmayacak bir ortak API içine OpenGL ve OpenGL ES birleştirme konusundaki zemin-up yeniden tasarımı çaba Mevcut OpenGL sürümleriyle uyumlu ". Öyleyse, şimdi grafik programlamaya girenlere OpenGL yerine Vulkan'ı öğrenmek için daha …
53 opengl  api  vulkan 

6
GLSL gölgelendiricileri nasıl hata ayıklayabilirim?
Önemsiz gölgelendiriciler yazarken (önemsiz olmayan başka bir kod yazarken olduğu gibi) insanlar hata yapar. [kaynak belirtilmeli] Ancak, diğer kodlar gibi hata ayıklayamıyorum - sonuçta gdb veya Visual Studio hata ayıklayıcısını ekleyemezsiniz. Konsol çıktısı yok çünkü printf hata ayıklamayı bile yapamazsınız. Genelde yaptığım şey, renkli olarak bakmak istediğim verileri oluşturmak, ancak …
45 opengl  glsl  debugging 

1
“St” OpenGL bağlamında ne anlama geliyor?
stDiğer OpenGL parçalı gölgeleyicilere bakarken bu terimin birkaç kez ortaya çıktığını gördüm . Ancak, bunun ne anlama geldiğini veya ne için kullanıldığını bilmiyorum. İşte bir örnek: uniform vec2 u_resolution; vec2 st = gl_FragCoord.xy/u_resolution; Bunun piksel koordinatlarını 640 x 480 yerine 0.0 - 1.0 normal koordinatlarına dönüştürdüğünü anlayabilirim (örneğin). Ben de …
20 opengl 

2
İleri nedir ve nasıl çalışır?
OpenGL belgeleri bu fwidth belirtiyor returns the sum of the absolute value of derivatives in x and y. Bu daha az matematiksel terimlerle ne anlama geliyor ve onu görselleştirmenin bir yolu var mı? Fonksiyonu anlamaya dayanarak, komşu piksellerdeki fwidth(p)değerine erişebilir p. Bu, performansı önemli ölçüde etkilemeden GPU'da nasıl çalışır ve …
18 opengl 

1
Herhangi bir giriş geometrisi olmadan bir geometri gölgelendiricide ilkel üretmenin bir yolu var mı?
Birkaç yıl önce , yürüyen küpleri kullanarak 3B prosedürel arazi oluşturmak için bu GPU Gemini OpenGL'de uygulamaya çalıştım . Makale, Yürüyen Küpleri maksimum verimlilik için bir geometri gölgelendiricisinde uygulamayı önermektedir. Bu, gölgelendiriciyi etki alanındaki her voksel için bir kez çalıştırmam gerektiği anlamına gelir ve o hücredeki tüm geometriyi oluşturur. Tökezlediğim …


2
OpenGL'de bir hareket topu nasıl uygulanır?
Dönüşümler hakkında çok fazla okuma yaptıktan sonra uygulamam için bir topunu uygulama zamanı. Anladığım kadarıyla farenin tıklatıldığı noktadan başlayıp farenin serbest bırakıldığı noktadan bir vektör oluşturmalıyım. Benim sorum, (x, y) piksel koordinatlarını dünya koordinatlarına dönüştürmek zorunda mıyım yoksa sadece görüntü alanındaki her şeyi yapmalı mıyım (görüntü alanı pikselin ölçülen sahnenin …
15 opengl  trackball 

1
OpenGL uyumluluğu, adlandırma kuralları ve ARB vs EXT
Beni şaşırtan bir davaya rastlayana kadar OpenGL adlandırma kurallarının ve uzantılarının nasıl çalıştığına dair genel bir anlayış oluşturduğumu sanıyordum. İşte şimdiye kadarki anlayışım: Sonek yok - ör glGenBuffers(). Bu işlev çekirdek profilin bir parçasıdır. Wiki sayfası bu sürüm 1.5 başlayarak çekirdek profiline eklendi söylüyor. ARB - örn glGenBuffersARB(). Bu işlev …
14 opengl 

3
OpenGL'de saydamlık oluşturmanın bazı yöntemleri nelerdir?
Alfa harmanlama, yüzeyleri saydam hale getirmek için şu şekilde açılabilir: glDisable(GL_DEPTH_TEST); //or glDepthMask(GL_FALSE)? depth tests break blending glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); Ancak bu yalnızca nesneler önden arkaya oluşturulursa çalışır. Aksi takdirde, arka plandaki şeyler, aşağıdaki görüntüdeki zemin gibi daha yakın nesnelerin önünde görünür. Parçacıklar ve GUI öğeleri için sıralama iyi olurdu, …

1
Perspektif doğru enterpolasyon ne zaman devre dışı bırakılır (noperspektif)
GLSL'de tepe noktası niteliklerinin perspektif doğru enterpolasyonu varsayılan ayardır - noperspective niteleyici kullanılarak belirli tepe noktası nitelikleri için devre dışı bırakılabilir . İşlem sonrası gölgelendiriciler dışında, enterpolasyonun doğru şekilde devre dışı bırakıldığını hiç görmedim - başka kullanım durumları var mı? Ayrıca, performans açısından fark yaratıyor mu?

1
Art arda gelen OpenGL Compute Shader çağrılarını senkronize etme
Belirli bir sırayla yürütülmesi gereken ve çıktıları önceki girdilere bağlı olan birkaç hesaplama gölgelendiricim var. İdeal olarak, hiçbir zaman istemci tarafındaki bir tamponu kopyalamam ve GPU üzerinde tüm işlerimi yapmam gerekmeyecek. İki hesaplama shader'lar derlenmiş ve olarak bağlantılı olması düşünün program_oneve program_two. Ayrıca, GL_SHADER_STORAGE_BUFFERtarafından yazılan program_oneve okunan verileri içeren bir …

2
GL_STATIC_DRAW vs GL_DYNAMIC_DRAW vs GL_STREAM_DRAW: önemli mi?
OpenGL'de, arabellek nesnesi işlevleri ( glBufferData, glBufferSubDatave muhtemelen birkaç diğerleri) usage, muhtemelen uygulamanın daha iyi performans vermesine yardımcı olmayı amaçlayan, amaçlanan kullanımın bir ipucu olarak dokümantasyon tarafından tanımlanan bir parametreye sahiptir . kullanım Veri deposunun beklenen kullanım şeklini belirtir. Sembolik sabit olmalıdır GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, …

2
OpenGL - Kenarların algılanması
Rasgele ağlar yüklemek ve kenarlar boyunca kalın siyah çizgiler çizmek istiyorum. Şablon tamponunu kullanarak nesnelerin etrafına siyah bir siluet çizmeyi başardım. Sonucu burada görebilirsiniz: Ancak eksik olan, nesnenin kendisindeki siyah çizgilerdir. Normal süreksizlikleri kontrol etmeyi düşündüm: Komşu bir pikselin geçerli olandan farklı bir normal vektör olup olmadığını kontrol etme. Evetse, …

1
“MakeContextCurrent” tam olarak ne yapar?
Bu işlev hakkında oldukça kafam karıştı. GLFW Bağlam referansı şöyle diyor: Bu işlev, belirtilen pencerenin OpenGL veya OpenGL ES içeriğini çağıran evrede güncel hale getirir. Bir bağlam aynı anda yalnızca tek bir iş parçacığında geçerli hale getirilebilir ve her iş parçacığında aynı anda yalnızca tek bir geçerli bağlam olabilir. Ama …
12 opengl  c++ 

2
Türev haritalar ve Teğet Uzay Normal haritaları
Bazı motorların teğet uzay normal haritaları yerine türev haritaları kullandığını keşfettim . Biraz okuduktan sonra, teğet alan normallerinin yerini almanın gerçekten harika bir yolu gibi görünüyor, ancak bunları kullanmanın bir dezavantajı var mı? Neden hala teğet boşluk normalleri kullanmaya devam edelim? Hem avantaj hem de dezavantaj ile karşılaştırmak mümkün mü?

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.