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:

Lohnt sich das eine Gameengine in / für FB zu machen?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 06.09.2007, 16:26    Titel: Lohnt sich das eine Gameengine in / für FB zu machen? Antworten mit Zitat

Die überschrift Fragt schon alles zwinkern
Info:
http://de.wikipedia.org/wiki/Spiel-Engine
_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 16:33    Titel: Antworten mit Zitat

klar lohnt das, die meisten Spiele basieren auf einer Engine... groessere jedenfalls.... immer zu empfehlen... kommt aber auf die art von Spiel an, wie Dynamisch das ganze gestrikt sein soll ect....
Und vorallem kommt es auf einen selber an, auf den Programmierer... brauch man, will man ect zwinkern grinsen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 06.09.2007, 16:49    Titel: Antworten mit Zitat

Das könnte aber schwirig werden.. z.B die Verbindung mit Orge3D und FB ist nicht gerade einfach weil z.B die Headerdateien für FB fehlen.
_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 16:51    Titel: Antworten mit Zitat

Du musst ja nicht unbedingt gleich was so komplexes machen.... probiers doch erstma mit einer Engine fuer einfachere Spiele... maybe, Jump'n'Run oder Point'n'Click.... da braucht kein 3D....
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 06.09.2007, 16:59    Titel: Antworten mit Zitat

Adventures a la Monkey Island oder DOTT fände ich interessant. happy
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 09.09.2007, 13:01    Titel: Antworten mit Zitat

Den Core hab ich fertig grinsen

Gibts es da noch irgendwas zu verbessern?
Code:
' AndT's Gameengine preview (GameengineCORE)
' Testet with FB v0.18
#define FALSE 0
#define TRUE NOT FALSE
#define MainengineVersion "0.0.1 preview"

'The Settings are Here


'Gamename
#define GameName "AndT's EnginePreviewDemo"

'Gameversion
#define GameVersion "0.1"

 
  '(TRUE = Enable / FALSE = Disable)
' Install Mainstart
#define MainStart TRUE

' INTRO ;)
#define ViewIntro FALSE

' Degugging GUI (useful to find Bugs ;)
#define DEBUG FALSE

' GFXMODULE
#define GFXMODUL FALSE

' SOUNDMODULE
#define SndModul FALSE

' CONTROLMODULE
#define ControlModul FALSE


'WHEN A MODUL IS DISABELED, THEN DO THE COMPLIER NOT ADD THIS CODE AND THE MAINPROGRAMM IS A LIL BIT SMALER

Print "AndT's Gameengine"
Print "Version : ";MainengineVersion
#IF (ViewIntro = TRUE)
'Intro
' Introbeispiel
print
Print "Starting Game (";Gamename;" ";Gameversion;")"
#endif

'MainCore

#IF (DEBUG = TRUE)
color 15
Print "DEBUG enabled"
color 7
Print "Gamename          = ";Gamename
Print "Gameversion       = ";Gameversion
Print "MainEngineversion = ";MainEngineVersion
print
Print "InitModuls.."


'Modulinitalisirung (nur mit DEBUG.. ist noch todo..)
#IF (GFXMODUL = TRUE)
 PRINT "GFXMODUL"
     '#include "GFXINIT.bi"
    #ENDIF

#IF (SNDMODUL = TRUE)
    PRINT "SOUNDMODUL"
     '#include "SOUNDINIT.bi"
    #ENDIF

#IF (CONTROLMODUL = TRUE)
    PRINT "CONTROLERMODUL"
     '#include "ControlerINIT.bi"
    #ENDIF

 #IF (GFXMODUL + SNDMODUL + CONTROLMODUL = 0)
 Print "No modules are installed. Using FB core."
 #ENDIF
 #ENDIF
 
 'Hauptprogramm
 #IF (MAINSTART = TRUE)

' Hier wird später das eigl. Spiel sein..

'    Gaaanz simples Beispiel xD
Print
Print "Welcome to "; Gamename
print "ende"
sleep
 #else
Print "Main NOT installed"
Print "To fix this, use "
print "#define MainStart TRUE"
  #if (DEBUG = TRUE)
sleep
  #endif
 #endif

_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 09.09.2007, 14:06    Titel: Antworten mit Zitat

[ironie]

wow, einfach super! werd ich sofort verwenden, das ist ja ultra-flexibel und praktisch und so...

[/ironie]

ich glaub, dir fehlt einfach der grundgedanke, was so eine Engine überhaupt genau ist...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
atari
gesperrt


Anmeldungsdatum: 26.08.2007
Beiträge: 144

BeitragVerfasst am: 09.09.2007, 15:46    Titel: Antworten mit Zitat

wenn du die frage so stellst, solltest du es bleiben lassen.
man schreibt die meisten programme für sich und das aus spass am hobby.

und wenn du glück hast, findest du einpaar mesnchen die dann sagen :
oh,ahhh...hm....., das hast du aber fein gemacht.

dann kommt der hammer von den anderen gaffern :
ja aber, das würde ich so schreiben, die routine kannste so machen, also die schleife , nein... die geht anders. der bildaufbau , na kannste ein bisschen gamma reinbringen, ich würde das machen. der text dort oben, ein bisschen tiefer kann der schon sein. also bei flimmert das bild in der mitte, geht es nicht ruhiger....die formel würde ich umstellen, dann geht es ein millionstel sekunde schneller..was nur 78 fps , ich hatte damals 13470 fps...(bei ca 30 fps ist die ruhe schon hergestellt)...na die wolken könnten aufgelockerter sein....und...und..

schade das 99% der kritiker keinen job bekommen, dann ginge es uns besser und die forschung wäre weiter.

und das alles von leuten, die noch nichts vernünftiges geschrieben haben.

fazit : das programm ist nur für dich alleine.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Thorben



Anmeldungsdatum: 26.04.2005
Beiträge: 173
Wohnort: SH

BeitragVerfasst am: 09.09.2007, 19:29    Titel: Antworten mit Zitat

@atari
Ich finde, dass man nicht unbedingt alle Proramme nur für sich selbst schreibt. Ich selbst hab vor einiger Zeit 2 Programme geschrieben( darunter ein Spiel ), die jetzt seit etwa 2 Jahren auf fast allen Rechnern in meiner alten Schule laufen und auch genutzt bzw gespielt werden. Und das ist es aufjedenfall schon einmal Wert gewesen. Ich finde wenn man eine gute Idee hat kann man da schon was draus machen.

Allerdings ist eine Spiele engiene natürlich schon sehr komplex und damit wahrscheinlich wie schon gesagt eher für einen selbst, es sei denn man schaft es dem Spiel etwas zu geben, was sonst kein Spiel hat, dann ist auch eine Lückenlose Physikengiene oder perfekte Grafik nicht so wichtig.

MFG Thorben
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 10.09.2007, 07:06    Titel: Antworten mit Zitat

das ist ganz allein deine Entscheidung. Ich finde, es lohnt sich. Man sammelt dabei einiges an Erfahrung und hat, sofern man seine Sache gut macht, eine solide und erweiterungsfähige Grundlage für alle möglichen Dinge, da was mit Grafik zu tun haben, vorallem natürlich Spiele. Ich bastle seit 3 Monaten an einer 2d Engine vom Feinsten, mit Tilesupport, Animation im Hintergrund, Z-Hierarchie, Scale2x, etc. und kann sagen, ich bin im FB weitergekomm
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 10.09.2007, 07:43    Titel: Antworten mit Zitat

Cherry hat Folgendes geschrieben:
...bastle seit 3 Monaten an einer 2d Engine...

Geht mir aehnlich, haenge allerdings schon laenger und nicht besonders Intensiv dran... sowas geht aber auch nur wenn einem klar ist das sich sowas nichtmal nebenher beim Fruehstuck schreiben laesst und weiss was eine Engine ueberhaupt ist.
Das da oben ist jedenfalls keine grinsen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 10.09.2007, 10:37    Titel: Antworten mit Zitat

Darum fange ich auch mit einer Simplen (aber flüssigen) 2D-Engine an.
Einen Weg um Kreise zu texturieren hab ich schon gefunden..
Nee spass ich mach schon ziemliche Fortschritte.
Ein kleines beispiel für die GFX Engine (allerdings mit nur einer Funktion von 24):
Code:
#define red rgb(255,0,0)
#define blue rgb (0,0,255)
#define white rgb (255,255,255)
#define black rgb (0,0,0)

#DEFINE GFXDEBUG 1
#IF (DEBUG = TRUE)
Print " AndT's 2DPwrEngine installed"
Print "Version 0.1"
#ENDIF


' Eine Einzige Beispielfunktion der PwrEngine :p
sub GFXLINE(byval x as integer,byval y as integer,col as ulongint,size as integer)
   line (x,y)-(x+size,y+size),col,bf
   end sub


' simple programmierung
screen 19,32
dim as ulongint cm
dim as integer i
dim as double gx,pause
dim as string taste
dim as short ad,mode
gx=10
do
locate 1,1:print gx
if gx = 10 then mode = 1
if gx = 100 then mode = -1
pause+=1
if pause > 5 then gx+=mode:pause = 0

if gx<=1 then gx=2

' einfaches script als beispiel
for x as integer =1 to 1024 step gx
    for y as integer =1 to 768 step gx
        i+=1
       
        if i mod 2 = 1 then cm=white else cm = blue
        cm+=rgb(x mod 255,y mod 255,0)
        GFXLINE (x,y,cm,gx-2)
   
    next
next
sleep 1
loop until taste=chr(27)

Dürfte ziemlich Flüssig laufen..
_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 10.09.2007, 12:29    Titel: Antworten mit Zitat

Zum einen laeuft es alles andere als fluessig.. zum anderen finde ich das es nichtmal das "E" von Engine verdient hat, was soll das da darstellen, welchen nutzen/zweck hat es?
Auch schoen ist das Du eine abbruchmoeglichkeit einbauen wolltest... aber noch schoener waere es gewesen wenn Du der Variable 'Taste' auch den 'Inkey' zugewiessen haettest durchgeknallt

[EDIT] DIM AS ULONGINT cm ???? wozu brauchst Du fuer eine maximal 32bit darzustellende Farbteife eine 64bit variable ?[/EDIT]
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 10.09.2007, 23:30    Titel: Antworten mit Zitat

ok, stimmt, das da ist definitiv keine Engine, das ist eine Funktion zum Zeichnen einer Linie mittels FB Bordmitteln, was das ganze nur verlangsamt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 11.09.2007, 17:39    Titel: Antworten mit Zitat

Das hatten wir ja schonmal in seinem Interpreter...

mit einem simplen
Code:

Sub Linie(X1, Y1, X2, Y2,Farbe)
Line(X1,Y1)-(X2,Y2),Farbe
End Sub


hat man noch längst keine eigene Scriptsprache entwickelt!!!
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 11.09.2007, 17:43    Titel: Antworten mit Zitat

Bei einem Interpreter kann ich sowas noch verstehen, da wird eben alles an funktionen uebergeben und verarbeitet... selbst wenn da nur ein line bla bla drinne is... (auch wenn es letztendlich kein interpreter geworden ist grinsen ) aber das da oben ergibt fuer mich absolut keinen sinn...
btw: hab gesehen, ytwinky hat sich auch an einer Engine gemacht, wenn man etwas dran arbeitet, koennte es was werden vor lachen auf dem Boden rollen
http://www.freebasic-portal.de/index.php?s=fbporticula&mode=show&id=150
_________________
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 -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
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