Gamestudio Links
Zorro Links
Newest Posts
AlpacaZorroPlugin v1.3.0 Released
by kzhao. 05/20/24 01:28
Free Live Data for Zorro with Paper Trading?
by AbrahamR. 05/18/24 13:28
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (AndrewAMD), 645 guests, and 4 spiders.
Key: Admin, Global Mod, Mod
Newest Members
Hanky27, firatv, wandaluciaia, Mega_Rod, EternallyCurious
19051 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
hit.u1/v1 and scaling in A7.6 #242366
12/22/08 17:46
12/22/08 17:46
Joined: Jan 2007
Posts: 651
Germany
R
RedPhoenix Offline OP
User
RedPhoenix  Offline OP
User
R

Joined: Jan 2007
Posts: 651
Germany
Hi conitec,

Ich weiß, dass Bugs im Zusammenhang mit hit.u1/v1 hier schon Thema waren. Soweit ich dies testen konnte, sind die angesprochenen Probleme auch korrigiert worden. Leider gibt es bei mir immer noch Probleme mit unkorrekten hit.u1/v1 Werten und zwar im Zusammenhang mit dem Scalieren von Entities.

Im Zusammenhang mit einem eigenen Shadowmapping code für statische Terrainschatten trace ich von einer Lichtposition Positionen auf einer Terrainoberfläche an und prüfe auf Hindernisse. Wenn ein Hindernis getroffen wird, prüfe ich dessen texturalphakanal an der hit.u1/v1 position und moduliere anhand des alphawertes den schatten.
Code:
 photon = c_trace(temp_vec,vector(temp[0],temp[1],temp[2]+1),IGNORE_PASSABLE | IGNORE_YOU | USE_POLYGON | SCAN_TEXTURE);
if(photon) {
if (!you) continue;
if (!hit.skin1) continue;
format =  bmap_lock(hit.skin1,0);
tempi = 100; 
pixel_to_vec(oldi[0],tempi,format,pixel_for_bmap(hit.skin1,hit.u1,hit.v1));            
bmap_unlock(hit.skin1);
if(you.alpha == 100 && tempi  == 100) continue;
tex_alpha = tex_alpha + maxv(tempi-(100-you.alpha),0);
}

In diesem Beispiel erhalte ich in tex_alpha den alphawert der getroffenen Entitytextur unter Berücksichtigung des Grundalphawertes dieses Hindernisses. Mit diesem Wert kann ich einen "alpha"-Schatten auf dem terrain erzeugen, also eine shadowmap, die alphakanäle der Hindernisse berücksichtigt.

So lange alle Hindernisse nicht scaliert werden funktioniert dies auch einwandfrei.


Scaliere ich jedoch ein Hindernisentity mit entity.scale_x(_y _z), dann erhalte ich als Schatten ein Abbild als ob die hit.u1/v1 koordinaten nicht scaliert wären. Das sieht dann so aus, als ob der Schatten (scale wert) mal nebeneinander gelegt wäre, d.H. als ob hit.u1/v1 pro 1/entity.scale_x wiederholt würden. Sorry ich kanns nicht besser erklären und kann keine Bilder hochladen.
Beispiel: Ich scaliere ein Grasobjekt mit dem Faktor 4. Sein Schatten sieht dann so aus, als ob das scalierte Grasobjekt ein 4*4 Raster des ursprünglichen Grasobjektes wäre.

Viele Grüße
Redphoenix

Last edited by RedPhoenix; 12/22/08 17:47.
Re: hit.u1/v1 and scaling in A7.6 [Re: RedPhoenix] #242471
12/23/08 10:07
12/23/08 10:07
Joined: Jul 2000
Posts: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
Frankfurt
Ich kann hier kein Skalierproblem feststellen, zumindest nicht mit meinem Testmodell. Tritt das Problem mit Modellen auf, oder mit anderen Entity-Typen?

Re: hit.u1/v1 and scaling in A7.6 [Re: jcl] #242479
12/23/08 13:15
12/23/08 13:15
Joined: Jan 2007
Posts: 651
Germany
R
RedPhoenix Offline OP
User
RedPhoenix  Offline OP
User
R

Joined: Jan 2007
Posts: 651
Germany
Ich nutze zur Zeit nur Modelle. Ich kann es auch einmal mit anderen Entitytypen testen.

Zum besseren Verständnis habe ich eine E-Mail mit einem Testmodell sowie einem screenshot an den support gesendet.

Re: hit.u1/v1 and scaling in A7.6 [Re: RedPhoenix] #242491
12/23/08 14:34
12/23/08 14:34
Joined: Jul 2000
Posts: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
Frankfurt
Danke für die Email. Dank der Hinweise konnten wir den Fehler nun finden - er wird im nächsten Update behoben sein.


Moderated by  jcl, Nems, Spirit, Tobias 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1