-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " " <f...@g...pl>
Newsgroups: pl.comp.programming
Subject: Re: simple ray tracing
Date: Wed, 2 Nov 2011 08:45:22 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 79
Message-ID: <j8qvv2$g4e$1@inews.gazeta.pl>
References: <6...@s...googlegroups.com>
<j8btf4$hv5$1@node2.news.atman.pl>
<f...@n...googlegroups.com>
<j8dgas$474$1@node2.news.atman.pl>
<c...@a...googlegroups.com>
<4...@p...googlegroups.com>
<j8e70u$5vh$1@inews.gazeta.pl> <o...@a...home>
<j8ejfl$c33$1@inews.gazeta.pl> <o...@a...home>
<j8etse$d1q$1@inews.gazeta.pl> <o...@a...home>
<j8f51k$55t$1@inews.gazeta.pl> <j8gcve$sel$1@inews.gazeta.pl>
<j8gjq5$frm$1@inews.gazeta.pl> <j8gsvb$97n$1@inews.gazeta.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1320223522 16526 172.20.26.242 (2 Nov 2011 08:45:22 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 2 Nov 2011 08:45:22 +0000 (UTC)
X-User: fir
X-Forwarded-For: 79.162.45.113
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:193350
[ ukryj nagłówki ]> dodac; tylko ze zrobilem jeden z najbardziej maskrycznych
> balaganow na małych 400 linijkach kodu tak ze trzebeby
> uporzadowac, w sumie jednak klawe
>
przyspieszylbym to chetnie, ale nie bardzo wiem jak, wielowatkowosc
mimo opini ze to trudne jest tu tak naprawde najprostsza, ale mam
1 procesorowego kompa, nie mam tez dobrej karty do jakichs ew obliczen
na gpu o ile to bys sie wogole dalo zrobic(?); pozostaje sse ale musialbym
chyba napisac procedury w asmie i zlinkowac je ze swoim starym borlandem
- nie wiem czy sie da (?) zwlaszcza ze tak naprawde potrzebuje intrisincow,
jak dodac 'intrisincowo' funkcje w sse z liba - chyba sie nie da
(ew przesiasc sie na gcc pod winde ale nigdy nie uzywalem (?));
potrzebne sa po prostu szybkie intrisincowe funkcje jak
length)float3* v);
normalize(float3* v);
dot(float3* x, float3* v);
cross(float3* x, float3* v);
bo to jest masywnie uzywane w b. prosty sposob jak:
// find intersection point and its normal
//(...)
// get light
lightRay1 = sub(&intersectionPoint, &light1Pos);
lightRay2 = sub(&intersectionPoint, &light2Pos);
lightRay3 = sub(&intersectionPoint, &light3Pos);
float lightRay1length = length(&lightRay1);
float lightRay2length = length(&lightRay2);
float lightRay3length = length(&lightRay3);
float light1fade = linearFade(lightRay1length);
float light2fade = linearFade(lightRay2length);
float light3fade = linearFade(lightRay3length);
normalize(&lightRay1);
normalize(&lightRay2);
normalize(&lightRay3);
//tutaj ew wykrywac cienie - ale skasowalem bo nie wygladaly zbyt ok
float light1 = -dot(&intersectionPointNormal,&lightRay1)*light1fade
;
float light2 = -dot(&intersectionPointNormal,&lightRay2)*light2fade
;
float light3 = -dot(&intersectionPointNormal,&lightRay3)*light3fade
;
//// set pixel
if(light1<0) light1=0;
if(light2<0) light2=0;
if(light3<0) light3=0;
int r = (light1*light1r + light2*light2r + light3*light3r)*255.0;
int g = (light1*light1g + light2*light2g + light3*light3g)*255.0;
int b = (light1*light1b + light2*light2b + light3*light3b)*255.0;
r+=materialr;
g+=materialg;
b+=materialb;
if(r>255) r =255;
if(g>255) g =255;
if(b>255) b =255;
SetPixel(i,j,r,g,b);
toporna vektorowka na wektorch 3d, wszystko jest inline ale nie wiem jak
to przyspieszyc pozatym zeby te funkcje przepisac na SSE
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 02.11.11 17:04 wloochacz
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-21 cashback
- 2025-07-21 Pomarańczowy rakietnyj on de telefon ;)
- 2025-07-21 Gdańsk => Kotlin Developer <=
- 2025-07-21 Warszawa => Sales Executive / KAM <=
- 2025-07-21 Gdańsk => Programista Kotlin <=
- 2025-07-21 Białystok => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-21 opornosc falowa
- 2025-07-21 Katowice => Key Account Manager IT <=
- 2025-07-21 Wrocław => Controlling systems Consultant <=
- 2025-07-21 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-20 Absurdalny zakaz fotografowania będzie nowelizowany
- 2025-07-20 Takie tam...
- 2025-07-20 https://newsgrouper.org/pl.soc.prawo blokuje posty: 154 posts blocked.
- 2025-07-20 Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- 2025-07-20 Tani zakup z ali?