Blitz CodeCompo #9 - Back2Coding

Übersicht Sonstiges Smalltalk

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

BIG BUG

Betreff: Blitz CodeCompo #9 - Back2Coding

BeitragFr, Sep 14, 2007 18:04
Antworten mit Zitat
Benutzer-Profile anzeigen
So, hier also die Aufgabe für den 9. CodeContest!

Die Aufgabe lautet:

Erstelle einen "Baum-/Buschgenerator"!

user posted image

Ziel ist es, ein BB-Programm zu schaffen, dass Bäume in 2D oder 3D anhand eines oder mehrere Parameter generieren und visualisieren( darstellen Smile ) kann.
Ob ihr "herkömmliche" Laubbäume oder Büsche/Sträucher, Alien-/Grusel- oder Comicbäume oder sonstwas "Baumartiges" generiert, bleibt euch überlassen.
Ebenso ist freigestellt, ob eine 2D-Grafik oder ein Low- bzw. High-Polymodell das rotiert werden kann, generiert wird.

Regeln
- erlaubt sind wie gewohnt alle BlitzBasic-Varianten BB/B3D/BPlus/BMax
- 6 kB Code, ABER die zusätzlichen 2 kB sind hauptsächlich für Formatierungen gedacht, der Code sollte also theorethisch noch auf 4 kB zu quetschen sein.
- Doppelpunkt als Zeilentrennzeichen ist verboten!
- externe Dateien sind wieder verboten!

Abgabetermin ist 30.09.
Beitrag einfach wie gewohnt hier als Link inklusive Quellcode posten


~edit~
Pinned und Titel geändert...
d-bug
  • Zuletzt bearbeitet von BIG BUG am Sa, Sep 15, 2007 14:24, insgesamt 2-mal bearbeitet

Kernle 32DLL

BeitragFr, Sep 14, 2007 21:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Uff, schweres Thema.... Weis nicht ob ich das gebacken krieg.. Hab hier auch Privat viel zu tun.. (Mein Vater hat nen Bandscheiben Vorfall -_-) Aber ich werde es aufjedenfall versuchen Very Happy

BIG BUG hat Folgendes geschrieben:
[...]- Doppelpunkt als Zeilentrennzeichen ist verboten![...]

lol ? Dann mach ichs halt ohne ^^

Grüßle:
Kernle
Mein PC: "Bluelight" - Xtreme Gamer PC [Video]
Meine Projekte: Cube-Wars 2010 [Worklog]
Anerkennungen: 1. Platz BCC #7 , 1. Platz BCC #22 , 3. Platz BAC #89
Ich war dabei: NRW Treff III, IV ; Frankfurter BB Treffen 2009

skey-z

BeitragFr, Sep 14, 2007 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
hört sich mal wieder gut an, eine sehr definierte Aufgabenstellung und ohne das Problem mit den externen Dateien.

Mal schauen, ob ich etwas hinbekomme.

[edit] Noch eine kleine Frage, muss das Objekt auch abspeicherbar sein?
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

PowerProgrammer

BeitragSa, Sep 15, 2007 10:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe mal Testweise was gemacht:
http://projekte.redio.de/data/blitz/trees.bb

Ist noch ein bisschen sehr simpel und unfertig... Und extremst langsam. Aber lässt sich ja noch was draus machen.
www.xairro.com Alles für Webmaster und Programmierer! Es gibt mehr als bloß einen Counter!
 

gigi

BeitragSa, Sep 15, 2007 10:20
Antworten mit Zitat
Benutzer-Profile anzeigen
@PowerProgrammer: Ich finde deine Idee auch nicht doof. Es macht iergendwie Spaß dem Wald beim Wachsen zuzugucken Smile . Ich würde jedoch eine Taste zum wiederholen machen, damit man das Programm nicht immerwieder neustarten muss.
 

BIG BUG

BeitragSa, Sep 15, 2007 14:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Noch eine kleine Frage, muss das Objekt auch abspeicherbar sein?


Es wäre natürlich schön, wenn man die generierten Grafiken oder gleich den ganzen Generator dann auch in ein Spiel einbauen könnte. Man sollte ja schließlich auch außerhalb des Wettbewerbs was davon haben.

Eine ScreenShot-Taste, die ein einfaches "SaveImage" nutzt wäre also schon gut, aber primär geht es um den Generator, nicht um das abspeichern(Nicht dass einer 70% des Codes alleine für eine B3D-Save-Routine verbraucht Smile ).

@PowerProgrammer: Das zeigt schon sehr schön, dass man es sich gar nicht so kompliziert machen muss. Ich würde aber noch probieren, die Stämme zu "texturieren".
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final)

darth

BeitragSa, Sep 15, 2007 14:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe eine etwas andere Art gewählt einen Baum zu erstellen. Vllt ist jemandem ja das "MRCM" verfahren ein begriff. Es geht darum (iterativ) ein 4-eck (hier, allg einfach n-eck) durch ein paar matrizen (bei mir max 4) zu verändern, und in sich selber einzufügen. so entsteht ein interessantes Grenzbild, wenn man es lange genug rechnen lässt. So entstehen z.b auch bäume Smile...
es ist noch WIP, ich möchte noch den zufallsmodus einbauen, damit einige beispiele (namentlich der barnsley farm) besser aussehen. aber vom prinzip her wird sich nicht viel ändern.
(code 2.1kb - folgt:)
Code: [AUSKLAPPEN]

Graphics 800,600,0,2
SetBuffer BackBuffer()

Dim matrize#(3,5) ;(anz,stelle)
 Dim pt#(3,1)
Global anzm

;Sierpinsky
; anzm=3
;matrize(0,0)=.5 : matrize(0,3)=.5
;matrize(1,0)=.5 : matrize(1,3)=.5 : matrize(1,4)=.5
;matrize(2,0)=.5 : matrize(2,3)=.5 : matrize(2,4)=.25 : matrize(2,5)=.5

;Barnsleyfarn
; anzm=4
;matrize(0,0)=0.849 : matrize(0,2)=0.037 : matrize(0,1)=-0.037 : matrize(0,3)=0.849 : matrize(0,4)=0.075 : matrize(0,5)=0.183
;matrize(1,0)=0.197 : matrize(1,2)=-0.226 : matrize(1,1)=0.225 : matrize(1,3)=0.197 : matrize(1,4)=0.4 : matrize(1,5)=0.049
;matrize(2,0)=-0.15 : matrize(2,2)=0.283 : matrize(2,1)=0.26 : matrize(2,3)=0.237 : matrize(2,4)=0.575 : matrize(2,5)=-0.084
;matrize(3,3)=0.16 : matrize(3,4)=0.5

;Zweig
;anzm=3
;matrize(0,0)=0.387 : matrize(0,2)=0.43 : matrize(0,1)=0.43 : matrize(0,3)=-0.387 : matrize(0,4)=0.256 : matrize(0,5)=0.522
;matrize(1,0)=0.441 : matrize(1,2)=-0.091 : matrize(1,1)=-0.009 : matrize(1,3)=-0.322 : matrize(1,4)=0.422 : matrize(1,5)=0.506
;matrize(2,0)=-0.486 : matrize(2,2)=0.02 : matrize(2,1)=-0.113 : matrize(2,3)=0.015 : matrize(2,4)=0.4 : matrize(2,5)=0.4

While Not KeyHit(1)

If KeyHit(200) Then
 create(0,0,1,0,1,1,0,1,0)
 Text 10,10,"fertig" : Flip 0
 FlushKeys() : WaitKey()
EndIf

Flip 0 : Cls
Wend : End

Function create(x1#,y1#,x2#,y2#,x3#,y3#,x4#,y4#,s)
 If s<10 ;je höher, desto langsamer und schöner
  For k=0 To 4
   If anzm>k Then
    x1n#=matrize(k,0)*x1+matrize(k,2)*y1+matrize(k,4)
    y1n#=matrize(k,1)*x1+matrize(k,3)*y1+matrize(k,5)
    x2n#=matrize(k,0)*x2+matrize(k,2)*y2+matrize(k,4)
    y2n#=matrize(k,1)*x2+matrize(k,3)*y2+matrize(k,5)
    x3n#=matrize(k,0)*x3+matrize(k,2)*y3+matrize(k,4)
    y3n#=matrize(k,1)*x3+matrize(k,3)*y3+matrize(k,5)
    x4n#=matrize(k,0)*x4+matrize(k,2)*y4+matrize(k,4)
    y4n#=matrize(k,1)*x4+matrize(k,3)*y4+matrize(k,5)
    create(x1n,y1n,x2n,y2n,x3n,y3n,x4n,y4n,s+1)
   EndIf
  Next
 Else
  Line x1*800,600-600*y1,x2*800,600-600*y2
  Line x2*800,600-600*y2,x3*800,600-600*y3
  Line x3*800,600-600*y3,x4*800,600-600*y4
  Line x4*800,600-600*y4,x1*800,600-600*y1
  Flip 0
 EndIf
End Function

Das Ergebnis vom "Zweig"-Beispiel:
user posted image
Diese Signatur ist leer.
 

FWeinb

ehemals "ich"

BeitragSa, Sep 15, 2007 19:44
Antworten mit Zitat
Benutzer-Profile anzeigen
So jetzt will ich auch mal meinen Beitrage zur CodeCombo Einreichen (bin noch nicht Fertieg)
Also hier mal ein Paar bilder:


user posted image


user posted image


user posted image


So und wer es mal Testen will der kann das auch tun hier ist das Programm (nur als exe ist ja klar)

Download für Bäume im Stile des Letzten Beispieles


Download für die Andern
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

Kernle 32DLL

BeitragSa, Sep 15, 2007 19:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Boah, sowa skrieg ich nie im Leben hin ^^ Schau ich halt nur zu und warte wieder auf ein Thema bei dem ich mitmachen kann Razz

@ich:
Sie auf den Bildern toll aus, aber ich krieg irgentwie nur ein schwarzes Bild (Weiß nicht ob er noch rechnet oder ich ihm einfach dumme angaben gegeben habe)

@darth gamer
gleiches wie bei "ich"... Ebenfalls nur schwarzes Bild

@PowerProgrammer
Sieht interessant aus ^^ Lass die wichtigsten Parameter vom User bestimmen, und dann wäre es schon richtig gut Very Happy

Grüßle:
Kernle
Mein PC: "Bluelight" - Xtreme Gamer PC [Video]
Meine Projekte: Cube-Wars 2010 [Worklog]
Anerkennungen: 1. Platz BCC #7 , 1. Platz BCC #22 , 3. Platz BAC #89
Ich war dabei: NRW Treff III, IV ; Frankfurter BB Treffen 2009
 

FWeinb

ehemals "ich"

BeitragSa, Sep 15, 2007 20:16
Antworten mit Zitat
Benutzer-Profile anzeigen
du must wenn du alles eingegeben hast einfach warten der brechentet das schon

SO hier nochmal mein fast Absulutes Bild (ich teste nochmal nen Bischen)

user posted image

wer sich solche Bäume Machen will ohne viel einzutippen kann sich das hier ja mal anschauen:

Downloade
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs
  • Zuletzt bearbeitet von FWeinb am Sa, Sep 15, 2007 20:48, insgesamt einmal bearbeitet

SpionAtom

BeitragSa, Sep 15, 2007 20:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich bin noch in der Experimentierphase Laughing
Farben und so sind natürlich nicht final.
user posted image



@andere Bilder: Natur hat zwar Regelmäßigkeiten, aber bei euch siehts mir noch zu künstlich aus.
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080
 

FWeinb

ehemals "ich"

BeitragSa, Sep 15, 2007 20:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Meins aus also ich glaube mehr zufall geht nicht ^^

hab alle wert auf Zufall
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs
  • Zuletzt bearbeitet von FWeinb am So, Sep 16, 2007 15:40, insgesamt einmal bearbeitet

Lobby

BeitragSa, Sep 15, 2007 21:36
Antworten mit Zitat
Benutzer-Profile anzeigen
So,
dann geb ich hier auchmal meinen Senf dazu, hier mein erster Screenshot^^ Wink :

user posted image

Ich hoffe es gefällt euch, mir gefiel bisher das von 'ich' am besten, aber mal sehen Rolling Eyes

PS: Da es schwierig wird das in ein 3D-Format zu exportieren, hab ich das ganze in eine leicht bedinbare Funktion gepackt...
TheoTown - Eine Stadtaufbausimulation für Android, iOS, Windows, Mac OS und Linux

darth

BeitragSo, Sep 16, 2007 1:25
Antworten mit Zitat
Benutzer-Profile anzeigen
@kernle:
guck den source an (anstatt nur zu kopieren) und sieh, dass er erst auf key200 beginnen wird zu rechnen Very Happy

die andern beitraege sehen bisher toll aus. das von "ich" (ich sage nicht "mir"... obwohls grammatikalisch besser waere) ist ziemlich cool. ein phytagoras baum nehm ich an (der eine am anfang)?
Diese Signatur ist leer.
 

FWeinb

ehemals "ich"

BeitragSo, Sep 16, 2007 12:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja das sind alles Pytagoras Bäume alle mir unterschielichen eingenschaften Generiert ^^

Das Letzte Bild ist dann das ergeniss wenn man alles auf Zufall stehen hat
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

darth

BeitragSo, Sep 16, 2007 13:23
Antworten mit Zitat
Benutzer-Profile anzeigen
ich fand meine (ichs) idee derart genial. dass ich (nicht ich) es selber versuchen wollte und es nachprogrammiert habe. herausgekommen ist dies hier:
user posted image
ein phytagorasbaum mit 15 iterationsschritten, zufaelliger winkelwahl und zufaelligem seitenverhaeltnis (also nicht laenger quadrate).
ich (nicht ich) werde damit nicht teilnehmen (das waere mir (also ich) gegenueber ziemlich unfair - ich bleibe bei meinem coolen mcrm). aber ich (nicht ich) die idee einfach cool Very Happy

@spionatom:
du hast keinen sinn fuer mathematische schoenheit :O
Diese Signatur ist leer.
 

FWeinb

ehemals "ich"

BeitragSo, Sep 16, 2007 13:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Sehr schön gemacht wenn die BCC vorbei ist würde ich gerne Deinen Code sehen (nicht vorher) und mich würde auch noch interessiern wie lange es bei dir gebraucht hat ?
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

SpionAtom

BeitragSo, Sep 16, 2007 23:38
Antworten mit Zitat
Benutzer-Profile anzeigen
darth gamer hat Folgendes geschrieben:

@spionatom:
du hast keinen sinn fuer mathematische schoenheit :O

Ich hab ja nur gesagt, dass es künstlich aussieht.

Ich frag mich gerade, was so toll an den Pythagorasbäumen ist, die sind altbacken. Und allein in dem Wikipediaeintrag findet man eine Algorithmus und Anleitung zum Programmieren dazu. Nix für ungut, aber wo bleibt da die eigene Leistung? Wäre ja schlimm, wenn jeder zweite einen Pythagorasbaum einschicken würde.
In diesem Sinne, mix it up! Bringt eure eigene Kreativität mit ein!

Edit:
http://www.sunray2.de/Holger/Instancing.rar
Hat mein Kumpel von der Games Academy mal gemacht.
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080
 

FWeinb

ehemals "ich"

BeitragMo, Sep 17, 2007 15:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Hat ja noch keiner und ja wo bleibt da die eingen leistung, wenn du drauf gekommen werst dann hättest es ja auch machen könen.
Es geht ja drum einen Code zu schreiben der Bäume erzeugt wie der einzelne es umzusetzen hat wurde nirgends gesagt und ich habe nunmal diesen weg genommen weil ich denke damit bekomme ich ganz Akzeptable Bäume hin.

@Instancing
Das ist doch auch nen Pytagoras baum kanst ja auch in BB nach Programieren wenn du Spaß dran hast aber wenn du es machen würdest (oder vor gehabt hättest) du es ja nicht schlecht machen.

mfg

ich
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

Lobby

BeitragSa, Sep 22, 2007 11:13
Antworten mit Zitat
Benutzer-Profile anzeigen
So,
hier könnt ihr mal meinen SträucherMaker bewundern Very Happy
Mit den Pfeiltasten kann man sich den Strauch etwas genauer anschauen, mit 'a' und 'y' kann man Zoomen Wink
Um am Anfang nicht eingeben zu müssen einfach Alles mit 'Enter' überspringen, dann werden die Standartwerte benutzt(d=...)

Download
TheoTown - Eine Stadtaufbausimulation für Android, iOS, Windows, Mac OS und Linux
  • Zuletzt bearbeitet von Lobby am Mi, Sep 26, 2007 21:29, insgesamt einmal bearbeitet

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht Sonstiges Smalltalk

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group