Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Gemeinschaftsprojekt Strategiespiel?
Gehe zu Seite Zurück  1, 2, 3, 4
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 08.10.2005, 17:47    Titel: Antworten mit Zitat

naja das geht doch auch..
du hast doch einen Wert, wie weit das sichtfeld vom bildschirm ist, 45° hattest du bei OGL glaub ich initialisiert, das zählst du einfach zur kamera dazu (0° = Mitte; 22.5° = links am bildschirm; -22.5° = rechts am bildschirm, kommt natürlich drauf an ob die breitendrehung bei dir nach links (standard) oder rechts positiv ist). Dann machst du mit Sinus und Cosinus entweder nen Wert aus meiner gleichung oder benutzt dann auch deine, müsste ja auch gehen.
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 08.10.2005, 18:34    Titel: Antworten mit Zitat

Servus!

MisterD hat Folgendes geschrieben:
45° hattest du bei OGL glaub ich initialisiert, das zählst du einfach zur kamera dazu (0° = Mitte; 22.5° = links am bildschirm; -22.5° = rechts am bildschirm, kommt natürlich drauf an ob die breitendrehung bei dir nach links (standard) oder rechts positiv ist). Dann machst du mit Sinus und Cosinus entweder nen Wert aus meiner gleichung oder benutzt dann auch deine, müsste ja auch gehen.

Äh - hab ich jetzt irgendwas falsch verstanden? Das ist doch genau das, was ich gemacht habe, oder seh ich das falsch? "tempx=..." und "tempy=..." = dazuzählen, und dann in dem Winkel nach unten. Aber wie ich schon sagte: Funktioniert nicht.

Was möchtest Du mir mit "du hast doch einen Wert, wie weit das Sichtfeld vom Bildschirm ist" sagen? Meinst du diesen "znear" Wert? Der ist bei mir bei 0.1 - aber was hat das für nen Einfluss auf meine Mausposition? Befindet sich der Cursor auf der Ebene, die durch den Punkt(cam.x,cam.y,cam.z) und den beiden (eigentlich ja drei, aber was solls) Winkeln definiert wird, oder auf ner parallelen Ebene mit diesem Abstand?

Gruß
Lutz böse Ifer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 08.10.2005, 19:10    Titel: Antworten mit Zitat

nein, znear ist die entfernung, aber welcher die objekte, die näher an der "kamera" sind nicht mehr dargestellt werden. zfar ist die maximale entfernung in der Objekte dargestellt werden.

Du hast doch irgendwo stehen
gluPerspective 45.0, 800.0/600.0, 0.1, 100.0
oder so ähnlich. Und die 45.0 vorne ist das Sichtfeld von 45°, 22,5° nach rechts und 22,5° nach links. Das Zweite gibt dann das entsprechende Verhältnis von breite zu höhe des Bildschirms an womit auch das Sichtfeld nach oben und unten berechnet wird sonst gäbs komische verzerrungen.

Also mal n beispiel:
normal hast du ja
punktx = cam.x + cam.z * sin(cam.b) / (tan(cam.h))
punkty = cam.y + cam.z * cos(cam.b) / (tan(cam.h))
also cam.b und cam.h (ps: schon mal with angeschaut?)

und jetzt machst du einfach:
blick.b = cam.b+(maus.x-bildschirmbreite/2)*45/bildschirmbreite
blick.h = cam.h+(maus.y-bildschirmhöhe/2)*45/(seitenverhältnis)/bildschirmhöhe

sähe dann so aus für screen 19 (800x600):
getmouse maus.x,maus.y
blick.b = cam.b+(maus.x-400)*45/800
blick.h = cam.h+(maus.y-300)*45/(4/3)/600
punktx = cam.x + cam.z * sin(blick.b) / (tan(blick.h))
punkty = cam.y + cam.z * cos(blick.b) / (tan(blick.h))

Keine Garantie, kann sein dass ich irgendwo nen Fehler drin hab aber das Prinzip stimmt zwinkern
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 08.10.2005, 20:39    Titel: Antworten mit Zitat

Servus!

Also, entweder steh ich grade ganz gewaltig auf der Leitung, oder Du.

Nur so nebenbei: Ich bin nicht ganz so dämlich, wie ich vielleicht Aussehen mag - mir ist klar, was znear, zfar, das Seitenverhältnis, und der Öffnungswinkel ist. Das brauchst du nicht wirkliche jedes Posting zu erklären.

Und dann vergleich doch mal den Code, den Du vorgeschlagen hast, mit dem, von dem ich jetzt schon das ein oder andere Mal gesagt habe, dass es so nicht funktioniert. Dir ist schon klar, dass Du mir was vorschlägst, was ich schon lange so mache, und von dem ich dir schon mehrmals gesagt habe, dass es nicht stimmt?

Gucks dir >>hier<< an.

Gruß
Lutz böse Ifer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 08.10.2005, 20:51    Titel: Antworten mit Zitat

das könnte eventuell daran liegen, dass du und opengl unterschiedliche geometrien benutzen.
es gibt einmal die variante, dass du sagst, der ausgangspunkt ist das auge des Users, der Bildschirmabstand überschneidet sich mit dem Abstand des Users von einem bestimmten Punkt.
Die andere Variante ist, dass man davon ausgeht, dass der ausgangspunkt die Bildschirmmitte ist und der Bildschirmabstand mit der normalenlänge bis zu dem Punkt addiert bestimmt die entfernung des Users zu dem Punkt.
Probier vielleicht also mal deine Formeln umzubauen, dass du den User entsprechend des Bildschirmabstandes noch verschiebst oder sowas..

/edit: Bist du dir mit den Sin/Cos/Tan sicher? Ich hab da ned drüber nachgedacht sondern bin ma von ausgegangen, dass du die richtig hast aber irgendwie erscheinen die mir grad komisch, ich denk mal nen moment nach.
/edit2: Meine formeln stimmen nicht ganz.. maus rechts und links bewegen verändert nicht nur die breitendrehung.. ich probier mal bisschen rum und meld mich wenn ich was hab.
/edit3:
Code:
glPointSize 5
DO
    getmouse x,y
   
    'Ausgangsvektor erstellen: (mausx|1|mausy)
    difx=(x-400)/400*tan(degrad*29)
    dify=1
    difz=-(y-300)/300*tan(degrad*29)*3/4
   
    'Vektor mit der Kamera drehen
    vektor.x = difx*cos(degrad*camrot.b)                 +dify*sin(degrad*camrot.b)*cos(degrad*camrot.h)+difz*sin(degrad*camrot.h)*sin(degrad*camrot.b)
    vektor.y = dify*cos(degrad*camrot.b)*cos(degrad*camrot.h)-difx*sin(degrad*camrot.b)                 +difz*sin(degrad*camrot.h)*cos(degrad*camrot.b)
    vektor.z = difz*cos(degrad*camrot.h)                 -dify*sin(degrad*camrot.h)
   
    'Kollisionspunkt mit dem Boden berechnen
    conx = campos.x-(campos.z)/vektor.z*vektor.x
    cony = campos.y-(campos.z)/vektor.z*vektor.y
   
    'Punkt einzeichnen
    glBegin GL_POINTS
        glVertex2f conx,cony
    glEnd

Das funktioniert bei mir, ich musste allerdings an dem Sichtiwinkel irgendwie rumschrauben. 22.5 (45/2) hat nicht gepasst, mit 29 (58/2) kommts ziemlich haar genau hin obwohl bei der initialisierung nur 45 steht.
Ich hab übrigens statt mausposition=drehungsmanipulation einfach einen Ausgangsvektor von der Kamera aus gesehen zu Maus erstellt und den dann entsprechend der Kamera im Raum gedreht und meine Vektorengleichung benutzt, das funktioniert jetzt.
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Xolios
aka Ray


Anmeldungsdatum: 07.12.2004
Beiträge: 589
Wohnort: Wildeshausen

BeitragVerfasst am: 09.10.2005, 13:15    Titel: Antworten mit Zitat

Hallo.

Ich habe es gerade erst gemerkt. mit dem Kopf durch die Mauer wollen mit dem Kopf durch die Mauer wollen

Ich hat Folgendes geschrieben:
Hallo.

Also (endlich) ist hier mein Kampfsystem...
Einfach kampf starten...um die Kampfdaten zu verändern
die Raymni oder Corey.mni mit dem Editor ändern.
Die erste Zeile name des Spielers
Zweite Zeile anzahl der verschiedenen Einheiten (kann man ja später evtl mit Eof lösen.
Ab dritte Zeile die Monster

Name, Leben, Abwehr, Angriff, Trefferchance, Anzahl der Einheiten

u.s.w.

Wenn ein Kampf beendet ist legt das Prog eine Protokoll datei an
c:\BATTLOG.TXT (ich weiß scheiß pfad)
(lohnt sich reinzuschauen)

Gruß
Ray


Und hier is der Link:
http://home.arcor.de/minisoft/bt.zip

Gruß
Ray
_________________
www.ray-earth.de
Anm.: Neue ICQ
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 09.10.2005, 14:03    Titel: Antworten mit Zitat

So, Servus.

Ray, dein Posting war irgendwie total an mir vorbeigegangen, tschuldige, hatte ich garnicht gesehen. Kampfsystem hab ich mir grade angeguckt, schaut soweit ganz lustig aus. Für nen rundenbasiertes Spiel wär das sicherlich super.

MisterD: Vielen Dank, ich schaus mir sofort an.

edit:
MisterD - Ich ziehe den Hut.
Funktioniert einwandfrei. Bissl mit rumprobiert, schaut gut aus.
Ich habs nicht so mit Geometrie - im dreidimensionalem Raum schon gleich garnicht. Gestern bin ich bis 3 Uhr Nachts daran gesessen, zu errechnen, wo der Punkt 1 LE vor der Kamera liegt... Aber hat dann letztendlich auch nichts gebracht, der Cursor war immernoch woanders.

Darf man fragen, was Du studierst / arbeitest / lernst?

Gruß

Lutz böse Ifer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 09.10.2005, 15:22    Titel: Antworten mit Zitat

Darfst du.
Schüler der 13. Klasse, um Ostern schreib ich Abitur..
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 09.10.2005, 15:24    Titel: Antworten mit Zitat

Im verruchten Hessen wohl gemerkt! cool
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 09.10.2005, 15:29    Titel: Antworten mit Zitat

Offtopic fragezeichen?
Editiert durch Moderator (Sebastian): Ja ausrufezeichen. durchgeknallt

@Lutz Ifer: Das hab ich auch brechnet, der Ausgangsvektor ist der Vektor vom Betrachter zum Mauszeiger. der dann eben mit der Kamera gedreht ergibt den Richtungsvektor der Blickgeraden.
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 09.10.2005, 15:49    Titel: Antworten mit Zitat

Servus!

Wunderbar... hab mal spasseshalber meinen aktuellen Erfolgsstand >>hier<< online gestellt. Linke Maustaste: Die "Einheit" herumkommandieren, rechte Maustate / WASD : Bewegen.

MisterD: Wir machen gleichzeit Abitur. Nur ich im nicht ganz so verruchten Bayern. Ich wusste doch, das GeschichtsLK nicht so die Ideale Idee ist, und ich hätte Mathe wählen sollen.... dann könnte ich jetzt sowas. Naja, dafür hab ich wenigstens so im Grundkurs meine 15 Punkte abbonniert, so ist es ja nicht. Nur wie gesagt, ich hasse Geometrie, vorallem im Raum...

Gruß
Lutz böse Ifer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 09.10.2005, 16:00    Titel: Antworten mit Zitat

Hallo!

Ich wollte jetzt nur noch mal bezüglich des Arbeitsforum fragen. Wird diese Idee nun realisiert?

Greetings,
Mao
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 11.10.2005, 22:19    Titel: Antworten mit Zitat

Servus!

Sorry, war bissl beschäftigt.

Mao hat Folgendes geschrieben:
Ich wollte jetzt nur noch mal bezüglich des Arbeitsforum fragen. Wird diese Idee nun realisiert?


Wollte das nicht programmierer machen? Tut mir leid, liegt ausserhalb meiner Möglichkeiten. Mein Webspace schreit ja schon, wenn ich Dateien >1 MB hochzuladen versuche.

Dafür hab ich jetzt bisschen mit Texturen rumgepfuscht, und Teile des alten Codes aufgeräumt. Immernoch ein heilloses Durcheinander, aber soweit läufts.

Wenn's wen interessiert: >>hier<< - Steuerung wie gewohnt, wasd und rechte Maustaste zum Bewegen, linke für die Ameise.

@MisterD: Wärst du so freundlich, mal zu gucken, ob du ne Idee hast, was immernoch nicht mit der Maus stimmt? Aus "großer" Höhe vorallem stimmen die "Klickpositionen" überhaupt nicht....

Gruß,
Lutz böse Ifer

edit:
Ok, zugegeben, ich bin manchmal ein bisschen doof. Hatte übersehen, dass ich da was umgebaut hatte... Sch***** rumexperimentierei ohne Kommentare, da übersieht man leicht was. Jetzt funktionierts. - Mein Server für den Webspace ist nur grad down, ich aktualisier den Link morgen.


Zuletzt bearbeitet von Lutz Ifer am 11.10.2005, 22:59, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 11.10.2005, 22:28    Titel: Antworten mit Zitat

also meine idee wäre, dass das an deiner komischen perspektive liegt oder hast du das inzwischen wieder hinbekommen?
Ich habs bei mir grad ma ausprobiert, selbst wenn ich mich auf die grade noch sichtbare distanz (fog auf 100% bei 100) bewege stimmt die position noch exakt.
Leider kann ich dir ohne deinen Quelltext sonst nicht helfen.
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 12.10.2005, 11:08    Titel: Antworten mit Zitat

Lutz Ifer hat Folgendes geschrieben:
Servus!

Sorry, war bissl beschäftigt.

Mao hat Folgendes geschrieben:
Ich wollte jetzt nur noch mal bezüglich des Arbeitsforum fragen. Wird diese Idee nun realisiert?


Wollte das nicht programmierer machen?


Jo.
Bin dabei, alles einzurichten.
Wird (hoffe ich) alles mit Passwort-funktion in maximal ner woche fertig sein. Im Moment habe ich noch ein Problem, dass ich eine 2. MySQL Datenbank brauche(noch 3 Tage, dann hab ich eine), und mein FreeWebhoster alles "umsiedelt", damit keine Ausfälle mehr kommen. Erst ab gestern abend kann ich wieder ftp nutzen. Werde jetzt mal mit der Einrichtung des Forums anfangen. Forerst kommt ne PHP Passwortabfrage, nacher die .htacces abfrage.

Michael


EDIT: Forum ist Online. Brauche mal eure icq nummer(falls ihr das habt)
EDIT2: Passwortfunktion auch. Ist jetzt alles geschützt und online. Bekommt nacher die Passwörter. Möchte das aber nicht über PN machen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Progger_X
Mr. Lagg


Anmeldungsdatum: 24.11.2004
Beiträge: 784
Wohnort: Leipzig

BeitragVerfasst am: 17.10.2005, 21:00    Titel: Antworten mit Zitat

Meine is 234-496-651.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
otti



Anmeldungsdatum: 28.02.2005
Beiträge: 112
Wohnort: Wildberg

BeitragVerfasst am: 07.01.2006, 00:02    Titel: Antworten mit Zitat

hey

wie wärs mal mit ner zwischenstands info (vllt. mit pic oder download)....?

wär net.. ich glaub des würd mehr leute interessieren..danke

grüße und gutes neues jahr..
otti
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Lutz Ifer
Grillmeister


Anmeldungsdatum: 23.09.2005
Beiträge: 555

BeitragVerfasst am: 07.01.2006, 00:40    Titel: Antworten mit Zitat

Servus Otti.

Das Projekt ist mehr oder weniger eingeschlafen, ausser programmierer (siehe paar Posts über diesem) hat keiner wirklich Interesse, mit zu machen.

Ich hab dir mal was online gestellt: http://free.pages.at/datenbunker/FreeBasic/spiel.rar - ein wenig rumprobiere, OpenGL-tests, ein Beispielmodel (Nein, die Ameise sollte im Spiel nicht zu finden sein...)... Im Grunde genommen also völlig sinnlos. Gucks dir an.

Gruß
Lutz böse Ifer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 07.01.2006, 14:13    Titel: Antworten mit Zitat

Die Ameise ist ja cool! grinsen

Man könnte da ja auch so ein Spiel wie in irgendso einer alten Kindersendung raus machen: Annahme: Das Feld bestände aus Sumpf oder sowas. Für ein paar Sekunden sieht man das Feld aufgedeckt und sieht, wo man hergehen kann ohne einzusinken. Dann ist die Fläche wieder einheitlich und muss die Ameise durch den Sumpf über die Felder navigieren, ohne dass sie reinplumst... durchgeknallt
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
otti



Anmeldungsdatum: 28.02.2005
Beiträge: 112
Wohnort: Wildberg

BeitragVerfasst am: 07.01.2006, 16:15    Titel: Antworten mit Zitat

gute idee sebastian grinsen

schade lutz böse ifer......
is aber interessant ( zumindest für mich grinsen ) was man mit FB und OpenGL so alles machen kann...

grüße otti
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3, 4
Seite 4 von 4

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz