Flächenerkennung in 3D?

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

CO2

ehemals "SirMO"

Betreff: Flächenerkennung in 3D?

BeitragFr, Jul 15, 2011 18:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
so, nach langem hin und her hab ich mich nun entschieden, WoF alleine weiterzumachen (es ist eingefroren worden, als sich mein Teammitglied "Fleisch" nicht mehr meldete, doch nun wollte ich nicht länger auf eine Antwort warten und mache es kurzerhand alleine weiter Sad ). Es ist und bleibt ein 3D Spiel (dazu habe ich über MinGW minib3d compiliert). Nun habe ich 3 Fragen:


1.) Nun treten aber einige probleme auf: z.b. die Flächenerkennung bei gepachteten/gekauften Äckern. Ich möchte, das der Spieler eine Meldung bekommt, sollte er auf einem von ihm nicht gepachteten/gekauften Feld arbeiten. Ich hatte bereits die Idee alle Felder einfach Rechteckig zu machen und dann einfach in einer externen Datei zu definieren, diese würde dann wie folgt aussehen:
Code: [AUSKLAPPEN]
feld1
x1
y1
x2
y2
feld2
...

(ich benutze extra keine z-achse, da ich nicht vorhabe das Terrain irgendwie nach oben oder unten zu verschieben (zumal das zu noch mehr problemen bei der flächenerkennung führen würde)) Wenn ich das aber so mache, würde es bei einem Feld funktionieren, da die bedingung ganz einfach zu schreiben wäre: BlitzMax: [AUSKLAPPEN]
If((playerposx >= readx1) And (playerposx <= readx2) And (playerposy >= ready1) And (playerposy <= ready2)) Then
'BlaBlaBla
Else
DrawText 10, 10, "Du bist nicht mehr auf deinem Feld, hier kannst du nicht arbeiten!
EndIf
(Der Code ist gerade einfach so "dahingeklatscht" und es kann sein, das Fehler enthalten sind, wenn dem so ist, bitte verzeiht mir Wink )
Was mache ich jedoch, wenn der Spieler bereits 2 oder mehr Felder gekauft/gepachtet hat, dann müsste ich die bedingung dynamisch ändern können, damit der Spieler die Meldung nicht auf seinen eigenen Feldern bekommt. Bin gerade ein wenig verwirrt, wie ich das anstellen soll.


2.) Wie kann ich dynamisch die Textur auf den Feldern ändern, das heißt wenn der Spieler ein Feld grubbert, so soll hinter dem grubber die grubbertextur gezogen werden, wenn er pflügt, die pflugtextur, etc. wie stellt man das an?


3.) Dies ist eigentlich keine Frage, aber ich denke es lohnt sich nicht, das in den BB Stellenmarkt zu schreiben Wink (wenn ich das doch tun soll, bitte ich mich darauf hinzuweisen):
Ich suche einen 3D Modellierer, der gut Trecker und andere Landwirtschaftliche Fahrzeuge sowie Equipment modellieren kann, die Namen der Modelle sind bereits vorgegeben, es geht nur um die 3D umsetzung. Die Modelle müssen nicht viele Details enthalten (man sollte schon erkennen, das das ding was man da fährt ein mähdrescher, oder das das was man da gerade erntet Weizen ist Laughing ), da es sehr sehr viele sind (in meinem worklog steht eine zahl über 70, die unwichtigen habe ich rausgestrichen, komme jedoch immernoch auf einen wert über 50)
Bieten könnte ich allerhöchstens einen Credits-Eintrag.

sollte ich irgendwas vergessen haben, bitte fragen,
mfg,
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

skey-z

BeitragFr, Jul 15, 2011 18:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Was du vorhast ist nichts anderes als eine Tilemap.

Beschäftige dich mal mit Arrays, Types, Single Surface und animierten Texturen
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Xeres

Moderator

BeitragFr, Jul 15, 2011 18:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du noch nicht mit mehreren gleichen Objekten umgehen kannst, solltest du dich erst mal mit Types auseinander setzen, bevor du ein riesen 3D Projekt anfängst.
Ohne Grundlagen wird's unmöglich, das um zu setzen...
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

CO2

ehemals "SirMO"

BeitragFr, Jul 15, 2011 18:46
Antworten mit Zitat
Benutzer-Profile anzeigen
@ skey-z: Ich kenne Tilemaps in 2D, sowas gibts auch in 3D? Und wie genau wäre das? Also wenn ich mir so Minecraft vorstelle (jeder block 1 x 1 x 1m), das wäre zu grob, ich bräuchte schon so eine Tilemap, die - im maßstab des spiels - 10cm groß ist.
@ Xeres: Ich weiß, was Types sind, ich weiß was sie tun, etc. ich wollte einfach nur ein lösungsvorschlag haben.

mfG
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

Xeres

Moderator

BeitragFr, Jul 15, 2011 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Ohne Y Achse hast du im Prinzip eine 2D Karte - also eine Tilemap. Du musst nur Quadratische Bereiche definieren und kannst da jeweils ein Feld/Gegenstands Type reinstecken.
Über die Spielerkoordinaten bekommst du das Feld und kannst die Abfragen regeln.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

BladeRunner

Moderator

BeitragFr, Jul 15, 2011 19:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Ich weiß, was Types sind, ich weiß was sie tun, etc. ich wollte einfach nur ein lösungsvorschlag haben.

Ok, nimm Types. Die sind da ideal für.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

skey-z

BeitragFr, Jul 15, 2011 20:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, Tilemaps gibt es nicht in 3D du musst sie dir selber erstellen, Minecraft ist schon mal ein Schritt in die richtige Richtung.

Bist du sicher, dass du felder von 10x10cm benötigst, das wären auf einem qm schon 100 Tiles a 2 Polygone * 4 Vertices = 800 vertices, du fängst schon wieder so an wie bei deinen Modellen mit Lowpoly in überdimensionierten Bereichen.

Sieh es doch mal ein, solche Projekte übersteigen deine jetzigen Fähigkeiten, auch wirst du kaum einen geeigneten Grafiker oder Modeller finden, der nach deinen Wünschen eine Vielzahl von Modellen erstellt, die hinterher ungenutzt bleiben werden.

Ein Tipp, geh deine Probleme mit Stift und Papier an, male eine Skizze, was du haben willst, schreibe es dann in Pseudocode auf und wandel es dann in Codeform um und fange klein an.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group