Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 16, 2025 16:21

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 45 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 22:58 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
Akira hat geschrieben:
die werbung, die du da machst, hilft ihm bei seinem problem aber auch nicht weiter *g* und wenn er das nicht braucht, ist es sowieso unnötige arbeit.

doppelreim ... die koordinaten für die figur, die man in dem 2. proggy sieht...

wie rechnest du die auf die karte um, die definiert, welches tile begehbar ist?


ich habe die koordinaten der figur und lese die farbe des entsprechenden pixels aus dem schwarz/weiß Bitmap


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:02 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
hier ist das bitmap mit dem ich vergleiche


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:04 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
bei den tiles, die zum teil begehbar sein sollen, wären da dann nicht volle 64x64 pixelblöcke sondern die formen wie sie begehabr sind oder nicht


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:12 
Offline
DGL Member

Registriert: Do Okt 20, 2005 17:28
Beiträge: 51
eine ganz einfache frage.

Bild

das schwarze kastl ist die figur. wenn du jetzt einen schritt nach rechts machst, überprüfst du dann auf dem blauen punkt, ob das feld frei ist?
ja ich weiß, ich tast mich stückerlweiß ran, damit ich versteh, wie du das machst *g*

wenn die koordinaten deiner figur dem linkeren oberen rand des sprites deiner figur entsprechen, kann es nie funktionieren. ich frage, weil ich
sicher gehen will, das du die position abfrägst, wo die figur hingeht... also figur+breite+10 oder so ...

treff ma uns, dann hab ichs leichter *gg*


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:14 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
genau so sollte es aussehen
müsste in dem code auszug auf seite 2 auch zu sehen sein

if collide.Canvas.Pixels[mainchar.x+40+2,mainchar.y+8] = clWhite then walking := true;


es ist ja nicht so, dass es gar nicht funktioniert...
nur wenn man vor der wand steht, ein stück zurück rennt und wieder drauf zu rennt man in die wand rein


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:21 
Offline
DGL Member

Registriert: Do Okt 20, 2005 17:28
Beiträge: 51
Zitat:
1: if collide.Canvas.Pixels[mainchar.x+8,mainchar.y+64+2] = clWhite then walking := true;
2: if collide.Canvas.Pixels[mainchar.x+40+2,mainchar.y+8] = clWhite then walking := true;
3: if collide.Canvas.Pixels[mainchar.x+8,mainchar.y+16-2] = clWhite then walking := true;


die koordinaten stimmen? zB bei 3... runter... y+16 ... die figur ist ja wesentlich größer als 16 ...

aber das wird so oder so nicht funktionieren, wenn du zB auch tiles hast, die runde eingänge usw bieten...
so wie ich das seh, fragst du die falschen koordinaten ab... und es wird nicht reichen, wenn du nur einen
pixel pro geh-richtung abfragst...

ich hätte die tile-karte als kollisionskarte benutzt. die richtigen koordinaten kriegst du durch ne einfache division
der figurXY durch die breite/höhe der tilekarte. nur kannst halt damit kein free-form-tile-terrain mehr machen, mit
teilweise begehbaren tiles.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:26 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
Akira hat geschrieben:

die koordinaten stimmen? zB bei 3... runter... y+16 ... die figur ist ja wesentlich größer als 16 ...


3 = hoch gehen

VK_LEFT: mainchar.richtung := 0;
VK_RIGHT: mainchar.richtung := 2;
VK_UP: mainchar.richtung := 3;
VK_DOWN: mainchar.richtung := 1;


dass ein pixel pro gehrichtung zu wenig ist versteh ich, aber das erklärt in meinen augen nicht das verhalten, was meine kollisionsroutina an den tag legt (lange entfernungen->okay, kurz kehrtmachen und wiederkommen->murks)

deinen letzten abschnitt versteh ich nicht...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:36 
Offline
DGL Member

Registriert: Do Okt 20, 2005 17:28
Beiträge: 51
ich versteh's nicht.

was ich meinte:

nehmen wir an du hast 10 tiles, numeriert von 1-10 und baust so eine karte in einem text-file auf (test.txt? *g*)

0000100000
0000000200
0030000010

usw

du stehst jetzt auf 0/0 ... bewegst dich nach rechts und deine koordinaten erweitern sich ... auf 1/0 ...
das sind aber nicht die koordinaten auf der karte, sondern auf dem bildschirm. um die koordinaten auf der
karte zu erhalten mußt lediglich dividieren. ein tile ist zB 10 pixel breit, die karte ist 10 tiles breit, ergibt
eine maximallänge von 100 pixel. figur.x / 10 = karte.x ... das selbe für y. dann weißt du, auf welchem feld
auf der karte deine figur steht. auf die weise kannst deine abfrage machen. klar? ... aber bitte nicht in
fließkommawerten ;) und die figur sollte nicht breiter als ein tile sein ...

so würde ich es machen... ich hoffe, das ich irgendwie helfen konnte. wirklich. ich komm nicht auf dein problem,
bin müde und glaub ich hab frase vergrault, obwohl ich das gar nicht wollte. er hat es ja gut gemeint.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:44 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
das map format: jeder eintrag repräsentiert ein tile
weil es in der demo nur zwei tiles gibt (0.tga und 1.tga) stehen ind er test.txt nur 0en und 1en

ich glaube ich habe deine idee verstanden, aber das würde doch klar definierte tiles vorraussetzen, die entweder komplett begehbar oder nicht sind

werde morgen beim zivi weiter drüber nachdenken (da hab ich ja zeit ;))

vielleicht bist du ja morgen abend wieder hier - fände ich toll :)

Gute Nacht und nochmals vielen Dank!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 29, 2005 23:46 
Offline
DGL Member

Registriert: Do Okt 20, 2005 17:28
Beiträge: 51
bitte :)

du hast es verstanden. das ist dank genug, bei meinen erläuterungen lol

ja, das heißt, man hat nur tiles die begehbar/nicht begehbar sind. aber darüber kannst du dir ja DANN
immer noch gedanken machen, wenn es mal so weit funktioniert, das du überhaupt fehlerfrei gehen kannst ^^

ich hab morgen viel vor, aber ich werd sicher auch hier sein :)

bis denne, gute nacht ^^ *wegbin*


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 30, 2005 14:16 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Ach und doppelreim, bitte mach sowas wie mit dem Schwarz/Weiß-Bitmap nie wieder... Ich hasse Redundanz ^^

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 30, 2005 14:20 
Offline
DGL Member

Registriert: Do Okt 20, 2005 17:28
Beiträge: 51
lol +++

dabei ist redundanz gut fürs gehirn ^^


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 30, 2005 17:25 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
Akira hat geschrieben:
du hast es verstanden. das ist dank genug, bei meinen erläuterungen lol


nkay, wie ich auf das aktuell besetzte tile komme, hätte ich schon herausgefunden
nur ist die aufsplittung der tiles in begehbar/nicht begehbar für mich keine möglichkeit, das ist mir zuviel gefrickel

ich hab mich eher gefragt, warum zum henker meine kollisionsroutine so komisch arbeitet, jetzt mal abgesehen davon, dass es ne mist-routine ist (das seh ich ja ein, aber ich bin auf keinen anderen ansatz gekommen)

die idee mit dem bool array find ich gut... das muss ich mal weiter ausarbeiten, weil die spielfigur breiter ist als ein halbes tile, sich manche wege je zur hälfte auf zwei tiles erstrecken...

hab heute abend orchester, könnte sein, dass es hier später wird
falls überahaupt jemand reinschaut


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Dez 03, 2005 18:31 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 29, 2005 21:11
Beiträge: 88
Wohnort: Bonn
da bin ich wieder *hehe*
ich möchte den 3x3 array in angriff nehmen
aber wenns irgendwie geht möchte ich die erstellung des arrays automatisieren
wär ja ganz schön viel arbeit, die ganzen kombinationen einzeln aufzuschreiben
bei nem 2x2 array sinds 15 glaub ich, das ginge ja noch, aber bei 3x3... naja, die formel hab ich schon wieder vergessen...

Edit:
achja, das pascallsche dreieick... Es sind über 500 Kombinationen - nee, das ist auch zu viel aufwand
Ich bleib bei der Faulheit - vielleicht sollte ich mir die häufigsten raussuchen...

hat jemand ne idee?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Dez 03, 2005 23:42 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Hä?
Wo ist das Problem?

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 45 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 15 Queries | GZIP : On ]