Wie man Sounds NICHT laden sollte^^
Übersicht

bujaBetreff: Wie man Sounds NICHT laden sollte^^ |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das ist mein erster Post.
Ich kann mich ja kurz vorstellen^^ Also ich bin 14, habe seit paar wochen mit blitz3d angefangen, und arbeite im moment an einem Pong-Klon, den man im Netzwerk spielen werden kann. Nun zum Thema: Ich war heute so klug, meine Menü-Musik wie folgt zu laden: Code: [AUSKLAPPEN] While Not KeyDown (1) ;Hintergrundbild laden hintergrund = LoadImage ("title_background.jpg") TileImage (hintergrund,0,0) ;TEXTE LADEN UND ANZEIGEN fontvariable = LoadFont("Porscha.ttf",32,False,False,False) ; Font laden SetFont fontvariable ; Font setzen Text 512,80,"HAUPTMENÜ",True,False Text 512,120,"H = Spiel Hosten",True,False Text 512,160,"J = Spiel Beitreten",True,False Text 512,200,"A = Hilfe Anzeigen",True,False Text 512,240,"Esc = Beenden",True,False ;SOUND LADEN menusound = LoadSound ("Musik\intro.mp3") LoopSound menusound PlaySound menusound Wend Erstmal natürlich sehr klug den Sound aus der Schleife heraus zu laden -.- und dann nichtmal den Fehler gemerkt, sondern erstmal versucht den Sound zu manipulieren. Beim 2ten Versuch ist schließlich mein Dual-Core Rechner abgekackt und alle Fortschritte bis dahin waren weg. ISt nicht so tragisch^^ aber wer das gelesen hat macht hoffentlich nicht so einen dummen Fehler ![]() |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Laderoutinen gehören grundsätzlich nicht in eine Schleife immer wieder ausgeführt. | ||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Quellcode wird beim kompilieren immer abgespeichert. Solltest du vorher noch gar nicht gespeichert haben, dann wird's im tmp Verzeichnis gespeichert. (also zB "../BlitzPlus/tmp/tmp.bb"). | ||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
Triton |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hmja, faszinierend.
Leider sind die Fehler, die einen viel mehr ärgern, immer solche, die man nicht auf den ersten Blick sieht. Ich spreche von den Fehlern, die einem tage und wochenlang nicht ruhig schlafen lassen, weil man sie nicht finden und beseitigen kann ![]() ![]() ![]() Da sich die programmiererische Relevanz wohl in grenzen hält, verschiebe ich das mal nach Offtopic. Wer will, kann daraus ja einen "postet euren blödesten/verbuggtesten Code"-Thread machen ![]() |
||
Coding: silizium-net.de | Portfolio: Triton.ch.vu |
- Zuletzt bearbeitet von Triton am Do, Apr 17, 2008 21:25, insgesamt einmal bearbeitet
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Grade beim Blitz-Code-Wettbewerb:
Ich habe fast alles fertig, aber die KI hat nicht das gemacht was sie soll x) Das ganze Lag daran, dass ich in einem Array ausversehen sowas gemacht hab: For i=1 to 10 Variable(1)=1 Next Natürlich sollte die 1 zu einem i werden x) Und an so einem Fehler sucht man schon bei 10KB stundenlang, weil das fast garnicht auffällt >,< |
||
Twitter
Download Jewel Snake! Windows|Android |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Noch schöner sind in sich Verschachtelte For ... Next schleifen mit den Selben Variablen ^^ dauert auch seine zeit bis man das bemerkt. | ||
"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 |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der nervigste Fehler mit dem ich letze Zeit zu kämpfen hatte war, dass ich fast eine Woche gebraucht habe, um zu begreifen, dass man für jeden Thread in einem Server eine eigene MySQL-Verbindung auf machen muss, und nicht für das ganze Programm die selbe benutzen kann.
Das nervige dabei war, das Programm fror einfach ein, und der Debugger zeigt an addresse 0. Nach einer woche stieß ich dann in der Dokumentation von QtSql darauf, dass man eine eigene Instanz für jeden Thread braucht... |
||
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn man sich ein die eine oder andere Grundregelhält trifft man eigentlich fast nie auf fehler, die einen länger als 5 minuten beschäftigen.
Wichtig, vorneweg: ERST denken, DANN coden. Wenn ich ein Projekt anfange habe ich meit im Kopf immer schon eine ganz grobe planung für das komplette Programm. Dabei fallen einen potentielle Fehler schon auf, bevor man die erste Zeile schreibt. Ausserdem kommt nicht irgendwann das böse erwachen, dass man irgendwo einen Grundlegenden Fehler gemacht hat, mit dem man alles zwichendrin über den haufen werfen und nochmal neu Anfangen muss. Damit meine ich weniger Syntaktische fehler, sondern es geht eher um das Programmdesign. Bei sehr großen Projekten vlt den einen oder anderen Stichpunkt im vornerein niederschreiben. (evtl Programmablaupläne oder Struktogramme erstellen. Ich persönlich brauchte die zwar noch nie, aber es wird trotzdem immer wieder empfohlen) 1. Den Code immer nur um Minimale Schritte erweitern und ausführen. NICHT mit einem mal riesige Programmteile schreiben, ohne sie einmal irgendwann zu testen. Wenn ein Fehler auftritt, weis man meist relativ schnell, WO es knallt. 2. Eine gute Fehler-Eingrenz-Taktik angewöhnen. Viele Debugausgaben einfügen. Variablen überprüfen, eventuell absichern, dass keine Variablenüberschneidung auftritt. Auf Fehlermeldungen vom Debugger achten (Hier gabs schon oft genug leute, die die Fehlermeldung blind weggeklickt haben und sich dann mit "geht nicht" hier ausgeheult haben) Wenn alles nichts hilft eine komplette kopie vom Projekt machen, und alles löschen, was nicht unmittelbar mit dem Fehler zusammenhängt. Eventuelle von vorherigen Abläufen abhängige Variablen direkt mit testwerten intialisieren. Zwichen jedem kleinen "Löschschritt" den code testen ![]() ![]() Und zu guter letzt: Natürlich nicht im Blauen Stochern.. bei mehreren 1000 Zeilen code liegt die Aussicht auf erfolg recht gering.. Intelligent eingrenzen, wo der fehler überhaupt sein kann! ein kleiner tipp für die Debugausgaben: Code: [AUSKLAPPEN] const printdebug = 1 Function debug(text$) if printdebug Print "Debug: " + text$ end Function vor dem Kompilieren und ausliefern dann einfach das Printdebug auf 0 setzen. Wenn man weiterarbeitet und ein fehler tritt auf, kann man die debugausgabe so einfach wieder "anschalten". |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schlimm ist auch, wenn man LoadImage vor Graphics benutzt. Wenn man dann versucht mit DrawImage zu malen, wird das Bild nicht gefunden, und man fragt sich warum.
Oder wenn man Array-Indizes außerhalb der zulässigen Grenzen benutzt. Das gibt dann nämlich nicht direkt einen Fehler, und man wundert sich, woher die ganzen komischen Werte herbekommt. Castingprobleme float/int, Tippfehler, Copy&Paste ohne entsprechende Änderungen,... Die Liste ist lang. Und ich hab sie schon mehrmals durch ![]() |
||
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080 |
buja |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
SpionAtom hat Folgendes geschrieben: Schlimm ist auch, wenn man LoadImage vor Graphics benutzt. Wenn man dann versucht mit DrawImage zu malen, wird das Bild nicht gefunden, und man fragt sich warum.
Lol, das wusste ich gar nicht. Was dieser Thread alles bringt^^ Bevor ich poste schau ich hier erstmal nach ob einer den selben Fehler gepostet hat^^ |
||
... |
![]() |
Shodan |
![]() Antworten mit Zitat ![]() |
---|---|---|
was auch sehr fies ist, wenn man den Wert eines geladenen Handles in einer Float-Variable speichert.
Also Code: [AUSKLAPPEN] a#=Loadimage("test.bmp")
Mal funzt es, mal nicht. Hohe Zahlenwerte werden in Fliesskomma-Variablen gerundet, und schon stimmt der Wert des Handles nicht mehr. Hatte damals mein halbes Dogfight mit solchen Fehlern geproggt, bevor es aufgefallen ist. Und das auch nur, weil ich es mal auf einem anderen Rechner ausprobiert hatte. |
||
www.selfmadegames.de |
![]() |
d-bug |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aller miesester Tippfehler, den ich je sah und auch selbst schon hatte: 1 (Eins) und l "L" vertauscht, oder gar "I" (Ih) und l (L) ... Bei manchen Fonts fällt einem das absolut nicht auf und man sucht sich einen Buckel dran. Bei 0 (Null) und O (Oh) ist das manchmal auch so... Ganz toll auch wenn man sowohl die Variable l (L) als auch I (Ih) hat. Dieser Tippfehler sorgt für stundenlangen Spaß und ist nur zu empfehlen, wenn man mal gerade seinen Kumpel ärgern will... | ||
![]() |
peacemaker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hach, diese kleinen dummen Fehler sind immer lustig.
Das mit dem Image vor Graphics ist mir schon einmal passiert, ich habe gesucht gesucht und gesucht und schlussendlich wars dann durch Ausprobieren draussen. Was mich am meisten aufregt sind diese MAVs die manchmal wirklich komisch kommen. Heute z.B. bekam ich ne Mav, bei nem "Next". Einmal habe ich ne Mav gekriegt und die BB-IDE und IDEal haben mir den Fehler bei ner Comment-Zeile angezeigt. TJa, solche schöne Sachen machen Proggen soo interessant. |
||
~Tehadon~
www.tehadon.de http://www.blitzforum.de/worklogs/14/ |
![]() |
Randall Flagg |
![]() Antworten mit Zitat ![]() |
---|---|---|
d-bug hat Folgendes geschrieben: Aller miesester Tippfehler, den ich je sah und auch selbst schon hatte: 1 (Eins) und l "L" vertauscht, oder gar "I" (Ih) und l (L) ... Bei manchen Fonts fällt einem das absolut nicht auf und man sucht sich einen Buckel dran. Bei 0 (Null) und O (Oh) ist das manchmal auch so... Ganz toll auch wenn man sowohl die Variable l (L) als auch I (Ih) hat. Dieser Tippfehler sorgt für stundenlangen Spaß und ist nur zu empfehlen, wenn man mal gerade seinen Kumpel ärgern will...
Das hat ein Kollege von mir mal bei seiner Schwester gemacht. Die wollte sich irgendwo einloggen, musste dann aber ans Telefon. Er hat ihr dann alle "I" (Ih) durch "l" (L) ersetzt xDDD Gott hatten wir was zu lachen xD hat lange gedauert bis die mal auf die Idee kam den Namen neu einzugeben^^ |
||
Meine Parodien & Geschichten |
barratator |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Mein schlimmstes Programm war so:
Alle 20 Sekunden wird eine Verbindung zu meinem VServer aufgebaut, nur leider, hab ich vergessen ein CloseTCPStream einzubauen... Nach 5 Stunden hatte man ca. 1000 Verbindungen offen...Das Programm von mir wurde ca. 2000 mal runtergeladen... Mein VServer hatte 180.000 Verbindungen also offen^^ Naja...es ging NICHTSMEHR...Nichtmals meine Homepage lies sich mehr öffnen...^^ gruß Bastian |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
mir wollte nie in den kopf für was man closefile braucht... hatte als Progs die immer File=Readfile gemacht haben und File=WriteFile und nach dem END waren alle dateien richtig... das gib bis 512 Dateien gut.... bis ich auf die idee kam das es am closefile liegen könnte dass sch die datei nicht öffnen lässt hats ewig gebraucht..
Noch schlimmer war SD... StarDoor.. eine art Spiel zu StarGate.. dort hab ich mittels SeedRnd 123 und den Darauffolgenden rands mir eine Liste von zufälligen adressen... Singleplayer liefs nur SeedRND läuft auf verschienen PC anderes...... DAAAAAASSS HAT GEBRAUcht... |
||
![]() |
Caesium |
![]() Antworten mit Zitat ![]() |
---|---|---|
SpionAtom hat Folgendes geschrieben: Schlimm ist auch, wenn man LoadImage vor Graphics benutzt. Wenn man dann versucht mit DrawImage zu malen, wird das Bild nicht gefunden, und man fragt sich warum.
Oder wenn man Array-Indizes außerhalb der zulässigen Grenzen benutzt. Das gibt dann nämlich nicht direkt einen Fehler, und man wundert sich, woher die ganzen komischen Werte herbekommt. Castingprobleme float/int, Tippfehler, Copy&Paste ohne entsprechende Änderungen,... Die Liste ist lang. Und ich hab sie schon mehrmals durch ![]() hm, in bmax funktioniert LoadImage vor Graphics, hatte das problem auch schon desöfteren in blitz3d... apropos copy&paste.. wollte in einer funktion von allen klassen die listen "leeren". joa.. habe den ersten (4-5zeiligen code) also mehrfach kopiert, aber eben nicht alles entsprechend abgeändert. hab 3 tage lang gesucht... kopf -> wand! |
||
Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann. Das Gegenteil ist da schon schwieriger. ![]() |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Endlosschleifen sind schon was Dummes. Vor allem dann, wenn mans nicht bemerkt. Meine neuste Kreation stürzt einfach ohne ein Wort zu sagen ab. Davor wundert man sich, warum er 2sek oder so nix tut ![]() Vereinfachen lässt es sich auf folgendes Schema: Code: [AUSKLAPPEN] hallo()
Function hallo() tu_was() End Function Function tu_was() hallo() End Function Bin recht schnell drauf gekommen, aber so einen Fehler hatte ich noch nie (Mit Funktionen). mfG, Christoph. |
||
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie kommt man denn auf die Idee sowas zu schreiben? | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei mir wars so, dass ich variablen mit umlauten hatte.
Da kam dann immer image does not exist oder andere solcher irretreibenden fehlermeldungen^^ Hab ewig gesucht, bis mich ein netter Mensch darauf hinwies, dass es an den Variablennamen liegen könnte xD |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group