Studiowałem przykłady Nvidii z SDK, w szczególności projekt Island11 i znalazłem coś ciekawego w kawałku kodu HLSL, który koryguje odbicia w górę iw dół w zależności od stanu wysokości fali. Oczywiście po przeanalizowaniu krótkiego akapitu kodu: // calculating correction that shifts reflection up/down according to water wave Y position float4 …
Jak wygenerować liczbę losową w HLSL? Pytam, ponieważ chcę spróbować śledzenia gpu ray . Musisz wygenerować losowe kierunki w module cieniującym piksele. Więc chcę randFloat(), gdzie wynikiem jest liczba losowa od -1 do +1. Jaka jest umowa z instrukcją dotyczącą szumu hlsl ? Dokumenty mówią, że został on usunięty z …
W porządku, trudno mi zrozumieć, jak stałe bufory są powiązane z etapem potoku i aktualizowane. Rozumiem, że DirectX11 może mieć do 15 buforów stałych shaderów na stopień, a każdy bufor może pomieścić do 4096 stałych. Nie rozumiem jednak, czy ID3D11Buffer COM używany do interakcji ze stałymi buforami jest tylko mechanizmem …
Próbuję wyprodukować moduł cieniujący do odtworzenia białego plastikowego obiektu z kolorowym światłem w środku. Albo przez posiadanie cieniowania, które będzie półprzezroczyste i jeśli umieszczę światło wewnątrz obiektu, światło przejdzie przez niego lub przez cieniowanie, które udaje efekt światła wewnątrz. Efekt, który zamierzam, jest trochę jak światło przechodzące przez abażur podobne …
Widzę funkcje ddxi ddyglsl i odpowiedniki hlsl pojawiają się w kodzie modułu cieniującego co jakiś czas. Obecnie używam ich do mapowania wypukłości bez stycznej lub bitangentu, ale w zasadzie skopiowałem i wkleiłem kod. Nie rozumiem, czym właściwie są te funkcje, co robią i kiedy chciałbym ich użyć. Więc pytania: Jakie …
Popraw mnie, jeśli się mylę, ale zarówno zadania modułu cieniowania geometrii, jak i modułu cieniowania teselacji mają generować wierzchołki na potoku graficznym. Chciałbym wiedzieć, czym się różnią i kiedy powinienem używać jednego nad drugim?
Rozumiem składnię HLSL, na przykład udajmy, że mam to jako mój HLSL: struct VOut { float4 position : SV_POSITION; float4 color : COLOR; }; VOut VShader(float4 position : POSITION, float4 color : COLOR) { VOut output; output.position = position; output.position.xy *= 0.7f; // "shrink" the vertex on the x and …
Jak mogę wdrożyć szybkie oświetlenie z wieloma światłami? Nie chcę ograniczać gracza, może on umieścić na poziomie nieograniczoną liczbę i ewentualnie nakładające się (punktowe) światła. Problem polega na tym, że shadery zawierające dynamiczne pętle, które byłyby konieczne do obliczenia oświetlenia, są zwykle bardzo wolne. Pomyślałem, że jeśli w czasie kompilacji …
Próbuję stworzyć błyszczący efekt dla mojego modułu cieniującego w czasie rzeczywistym, ale nie wiem jak. Oto jeden przykład i inny przykład . Jakiej techniki mogę użyć, aby to zaimplementować?
Próbuję stworzyć efekt grubości powierzchni wody za pomocą modułu cieniującego fragmenty wierzchołków. Jestem w środowisku gier 3D, ale jest to widok przewijania, więc widok „2D”. Oto dobry samouczek tworzenia takiego efektu w prawdziwym 2D za pomocą modułu cieniującego fragmenty. Ale myślę, że nie można tego użyć w moim przypadku. W …
W porządku, trudno mi się spakować bool i ustawić w buforze ciągłym hlsl i nie jestem pewien dlaczego. Oto bufor w hlsl cbuffer MaterialBuffer : register(b1) { float3 materialDiffuseAlbedo; float materialSpecularExponent; float3 materialSpecularAlbedo; bool isTextured; }; I tutaj jest w c ++ struct GeometryBufferPass_MaterialBuffer { XMFLOAT3 diffuse; float specularExponent; XMFLOAT3 …
Od jakiegoś czasu pracuję nad grą typu tower defense i do tej pory jestem bardzo zadowolony z rezultatów. Chciałbym jednak dodać jedną rzecz. Widziałem wideo GeoDefense na Windows Phone 7 tutaj: http://www.youtube.com/watch?v=YhPr4A4LRPQ Zwróć uwagę, jak (kiedy jednostka zostanie zabita lub pocisk trafi w jednostkę), tło faluje w postaci fali. Jak …
Piszę więc małą grę za pomocą Direct3D 9 i używam multiteksturowania w terenie. Wszystko, co robię, to próbkowanie 3 tekstur i mapy mieszania oraz uzyskiwanie ogólnego koloru z trzech tekstur w oparciu o kanały kolorów z mapy mieszania. W każdym razie, gdy próbuję więcej niż 1 tekstury, uzyskuję ogromny spadek …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.