Aktuelle Zeit: 21.07.2019 00:38

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 47 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5  Nächste
Autor Nachricht
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 09.06.2018 10:22 
Offline
Benutzeravatar

Registriert: 06.07.2017 12:24
Mijikai hat geschrieben:
Mir graut schon vor der Pfadfindung [...]

Was Pfadfindung angeht, habe ich einen sehr schnellen A*-Star-Algorithmus an der Hand, den ich ich über die Jahre (bereits in Blitzbasic) immer weiter verfeinert habe; die Routine ist gut wartbar, und man kann sie auf eigene Bedürfnisse hin tweaken. Im Prinzip mußt nur die Prozedur aufrufen und ihr ein paar Parameter mitteilen, also Start/Zielpunkt, wie groß die Ausdehnung deines Spielfeldes ist, etc. Die Routine gibt dir dann entweder eine 0 oder eine Zahl (= Anzahl der Schritte) zum Ziel zurück. Außerdem brauchst du eine sogenannte collisionMap, die nur aus 0en und 1en besteht als Referenz für den Algorithmus, welche Felder blockieren und welche "offen" sind.
Wahlweise kannst du sämtliche pathNode-Koordinaten in einer globalen LinkedList aufzeichnen lassen, oder dir einfach nur die nächste Koordinate mitteilen lassen. Und es gibt eine optionale Regel, ob "Ecken abgeschnitten" werden dürfen (also diagonale Schritte an kollidierender Architektur vorbei).
Ich bin bis morgen früh auf der Arbeit, kann heute also keinen Code hier reinstellen, aber wennst magst, kann ich dir die Routine gerne zukommen lassen. :)

_________________
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 09.06.2018 13:10 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
diceman hat geschrieben:
Mijikai hat geschrieben:
Mir graut schon vor der Pfadfindung [...]

Was Pfadfindung angeht, habe ich einen sehr schnellen A*-Star-Algorithmus an der Hand...
Ich bin bis morgen früh auf der Arbeit, kann heute also keinen Code hier reinstellen, aber wennst magst, kann ich dir die Routine gerne zukommen lassen. :)


:shock:

Das würde mir ungemein weiterhelfen :D

Gerne nehme ich das Angebot an, es hat aber keine Eile.
Mach dir bitte keine Umstände wegen mir.

_________________

Links:
PureBasic Discord
[ENGINE] 2D Engine Nautilus (Win)
[INCLUDE] GLFW 3.3 Library
[MODULE] Bass Library 2.4 (Win)
[LIBRARY] Hexi Binary2Hex (Win)



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 09.06.2018 22:14 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
Click-Move Test:
Bild

_________________

Links:
PureBasic Discord
[ENGINE] 2D Engine Nautilus (Win)
[INCLUDE] GLFW 3.3 Library
[MODULE] Bass Library 2.4 (Win)
[LIBRARY] Hexi Binary2Hex (Win)



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 10.06.2018 23:11 
Offline
PureBasic Team
Benutzeravatar

Registriert: 11.09.2004 16:35
Wohnort: Saxony / Deutscheinsiedel
Auch dir viel Glück + Durchhaltevermögen :allright:
Tolle Entwicklungen hier... :D

_________________
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 12.06.2018 10:35 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
Andre hat geschrieben:
Auch dir viel Glück + Durchhaltevermögen :allright:
Tolle Entwicklungen hier... :D


Danke, werde beides brauchen :)

_________________

Links:
PureBasic Discord
[ENGINE] 2D Engine Nautilus (Win)
[INCLUDE] GLFW 3.3 Library
[MODULE] Bass Library 2.4 (Win)
[LIBRARY] Hexi Binary2Hex (Win)



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 16.01.2019 15:37 
Offline
Benutzeravatar

Registriert: 14.06.2006 16:46
Wohnort: Kiel
Nanu? Wurde das Projekt beendet? Da war doch gerade die Rede von Durchhaltevermögen und dann ... :oops:

_________________
(Win 10 64-bit, PB 5.31)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 16.01.2019 15:54 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
Ist bei meinem Spiel leider nicht anders, da ich derzeit ein anderes Hobby habe, wo ich dran bin. Ich vermute mal, das ist bei Mijikai ähnlich oder hat einfach aus anderen Gründen keine Zeit.
Mijikai wird sein Projekt bestimmt bald wieder fortsetzen. :)

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 16.01.2019 16:14 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
Hab noch nicht aufgegeben :)
Soweit es meine Zeit erlaubt arbeite ich weiter an der OpenGL-library (Engine - mein 2ter Versuch).
Sobald es nennenswerte Neuigkeiten gibt werde ich den thread auch wieder updaten.

_________________

Links:
PureBasic Discord
[ENGINE] 2D Engine Nautilus (Win)
[INCLUDE] GLFW 3.3 Library
[MODULE] Bass Library 2.4 (Win)
[LIBRARY] Hexi Binary2Hex (Win)



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 26.01.2019 12:49 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
Kleines Update,
jetzt gibt es ein neues Sprite Interface für die Engine :)

Features:
Zitat:
    - get size
    - get center
    - size (global + reset)
    - scale
    - draw offset switch (image center / image origin)
    - rotation (center point)
    - alpha
    - tint
    - light (use sprite as light source - blending)
    - push (will push the sprite into a layer - 10 layers are available - its possible to draw another 10 layers over the 10 layers before!)


Alles ist in mehrere Funktionen aufgeteilt damit die Ausführung schneller wird je weniger Optionen benötigt werden.

So sieht das Interface aus:
Code:
;PureBasic v.5.62

Interface SPRITE
  SpriteWidth.f()
  SpriteHeight.f()
  SpriteCenterX.f()
  SpriteCenterY.f()
  SpriteSize.i(Width.f,Height.f)
  SpriteSizeReset.i()
  SpriteDraw(X.f,Y.f,Center.b = #False,Alpha.a = #Null)
  SpriteDrawFx(X.f,Y.f,Center.b = #False,Alpha.a = #Null,Angle.f= #Null,Tint.l = #Null)
  SpritePushDraw(Layer.i,X.f,Y.f,Center.b = #False,Alpha.a = #Null)
  SpritePushDrawFx(Layer.i,X.f,Y.f,Center.b = #False,Alpha.a = #Null,Angle.f= #Null,Tint.l = #Null)
  SpriteShape(X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Alpha.a = #Null)
  SpriteShapeFx(X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Alpha.a = #Null,Angle.f= #Null,Tint.l = #Null)
  SpritePushShape(Layer.i,X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Alpha.a = #Null)
  SpritePushShapeFx(Layer.i,X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Alpha.a = #Null,Angle.f= #Null,Tint.l = #Null)
  SpriteLight(X.f,Y.f,Center.b = #False,Tint.l = #Null)
  SpriteLightFx(X.f,Y.f,Center.b = #False,Angle.f= #Null,Tint.l = #Null)
  SpritePushLight(Layer.i,X.f,Y.f,Center.b = #False,Tint.l = #Null)
  SpritePushLightFx(Layer.i,X.f,Y.f,Center.b = #False,Angle.f= #Null,Tint.l = #Null)
  SpriteShapeLight(X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Tint.l = #Null)
  SpriteShapeLightFx(X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Angle.f= #Null,Tint.l = #Null)
  SpritePushShapeLight(Layer.i,X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Tint.l = #Null)
  SpritePushShapeLightFx(Layer.i,X.f,Y.f,Width.f = #Null,Height.f = #Null,Center.b = #False,Angle.f= #Null,Tint.l = #Null)
  Release.i()
EndInterface


Beispiel Licht:

Bild

Bild

Als nächstes ist das Tile Interface dran :)

_________________

Links:
PureBasic Discord
[ENGINE] 2D Engine Nautilus (Win)
[INCLUDE] GLFW 3.3 Library
[MODULE] Bass Library 2.4 (Win)
[LIBRARY] Hexi Binary2Hex (Win)



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Isometrische 2D Spiele-Engine
BeitragVerfasst: 28.01.2019 13:16 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
:allright:

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 47 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye