Ersatz für CameraPick oder LinePick
Übersicht

![]() |
StepTigerBetreff: Ersatz für CameraPick oder LinePick |
![]() Antworten mit Zitat ![]() |
---|---|---|
Gibt es einen Ersatz für CameraPick oder LinePick der um weiten schneller läuft? | ||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nun das kommt draufan wie du es machst. Wenn du die Pick Methode nicht auf Polygon setzt ist es zb schon beträchtlich schneller.
Etwas was auch sehr wichtig ist, ist das du nicht keine allzugrossen Pickdistanzen wählst, da es sonst viel zu lange dauert. (gibt viele die meinen, das Cam Pick umbedingt zig tausend einheiten tief rein müsse oder die kamera 10000 - 20000 view range brauche, was kompletter blödsinn ist) Hatte bisher nie Probleme, das Picking zu langsam gewesen wäre. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Optimal wäre es wenn du nur Objekten nen Pickmode gibst die
du wirklich testen willst bzw. in Frage kommen etc. z.B. erst mit Box oder Sphere testen und dann evtl. auf Polygon umschalten . Und wie Dreamora sagt durch die länge die du angibst können sehr viele Schnitttests anfallen wenn dein Terrain z.B. den Pickmode an hat . Für weite Strecken habe ich die länge hoch gezählt wenn nix gepickt wurde (bei LinePick) |
||
sonicfireBetreff: Re: Ersatz für CameraPick oder LinePick |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
StepTiger hat Folgendes geschrieben: Gibt es einen Ersatz für CameraPick oder LinePick der um weiten schneller läuft?
Was machst du denn, das es so auf Geschwindigkeit ankommt? |
||
~sonic |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
ein schatten system! Danke schonmal
noch was möglich |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
SUPER! MIT EUREN TIPS HAB ICH ES VON 11 SCHON AUF 20 fps geschafft.
noch ideen? |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
trooper |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
schon mal daran gedacht, dass auch sonst noch ein anderer codeteil bremsen kann?
was für objekte sollen, denn gepickt werden? eventuell kannst du ja ab einer gewissen distanz nur noch auf das bounding volumen testen. |
||
-- imtane.de.vu --
a cherring ping |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also was ich gerade habe, läuft ohne meine schatten (mit camerapick) auf locker 80-90 fps
mit auf gerade 15-20 fps ich denke, es liegt an den schatten ![]() |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Folgende Idee dazu wenn es ums reine Picking geht:
Alle Entities, die gepickt werden können renderst du von der Kamera folgendermaßen: Kein Shading, keine Texturen, kein Alphablending. Du erstellst eine Tabelle(sprich Array) mit den Handles der Entities und einer zugehörigen EINMALIGEN Farbe sowie färbst auch das Entity in dieser Farbe. Jetzt renderst du die Szene, liest mit ReadPixel an MouseX/Y entsprechend die Farbe ab, die gepickt wurde, und guckst nun in die Tabelle, welches Entity das war. Ich vermute nämlich, das Mark intern bei CameraPick eine Ray - Polygon/Sphere/Box Kollision durchführt, was denke ich, rechenaufwendiger ist. Bei LinePick muss diese Prüfung aber rechnerisch erfolgen. mfg olli |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
sehr sehr gute idee! Hab nu aber ein problem! Also:
Ich mache ein kleines Objekt um das Licht! Es hat eine ganz besondere Farbe. Wenn es "gesehen" wird dann sollte es eigentlich hell sein, wenn nicht dunkel aber irgendwie ist es bis auf einen punkt immer dunkel! ich geb euch mal den schatten-teil des codes: Code: [AUSKLAPPEN] Function shadow(tlight,shadowcam,shadowx#,shadowscale#)
CameraProjMode shadowcam,1 LockBuffer BackBuffer() For x=1 To shadowx# For y=1 To shadowx# LockBuffer TextureBuffer(shadowtex) PositionEntity shadowcam,x*shadowscale#-128,1,y*shadowscale#-128 PointEntity shadowcam,tlight If EntityDistance(shadowcam,tlight)<shadowmax# argb=ReadPixelFast(400,300) rrgb=argb Shr 16 And 255 Shl 0 grgb=argb Shr 8 And 255 Shl 0 brgb=argb Shr 0 And 255 Shl 0 If Not (brgb=254) ; If CameraPick(shadowcam,400,300)<>tlight oldcol=ReadPixelFast(x,y,TextureBuffer(shadowtex)) oldr=oldcol Shr 16 And 255 Shl 0 oldg=oldcol Shr 8 And 255 Shl 0 oldb=oldcol Shr 0 And 255 Shl 0 nr=oldr*.1 ng=oldg*.1 nb=oldb*.1 argb=(nb Or (ng Shl 8) Or (nr Shl 16) Or ($FF000000)) WritePixelFast x,shadowx#-y,argb,TextureBuffer(shadowtex) EndIf EndIf UnlockBuffer TextureBuffer(shadowtex) Next Next UnlockBuffer BackBuffer() CameraProjMode shadowcam,0 End Function |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group