Du bist nicht angemeldet.

Werbeanzeige

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

71

14.03.2012, 16:59

Haua, haua, haua. Schon allein das Wort "PossibleZuege" gehört bestraft, aber der Call is geil. So macht man aus kurzen Sachen lange. :D

Das zweite verursacht mir aber auch echt nur Schmerzen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Architekt

Community-Fossil

Beiträge: 2 490

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

72

14.03.2012, 17:12

Jo mir auch :( und die Frage "Was ist daran denn falsch?" kann ich nicht mehr hören.
Aber hier noch was:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Logikkonnektor::istZugNochMoeglich()
{
    //Wie viel Speicherplatz braucht ein Zug?
    if sizeof((MoeglicheZuege(GetSpielsteine(enemy),GetSpielsteine(own))) < 1)
    {
        Message msg;
        msg.msg[0] = 6;
        Send(msg);
    }
    else if (sizeof(MoeglicheZuege(GetSpielsteine(enemy),GetSpielsteine(own))) == 1)
    {
        Message msg;
        send(MoeglicheZuege());
    }
    else 
    {
        WaehleZugAus(MoeglicheZuege(GetSpielsteine(enemy),GetSpielsteine(own));
    }

    Logikkonnektor::WaehleZugAus(Zug* zuege&)
    {
        //Prüfe nach, ob eine Figur in Gefahr ist

    }
}
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

73

14.03.2012, 17:16

Oar neee, neeeeeeeee...
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

74

23.03.2012, 13:15

Habe gerade im glsl Shader

Quellcode

1
if (distance(specsPos[i], gl_Vertex.xyz) < specValue) {

mit

Quellcode

1
2
relPos = abs(gl_Vertex.xz - specsPos[i].xz)
if (max(relPos.x, relPos.y) < specValue) {

ersetzt. Hat den fps ganz gut getan... :P
Musikvisualisierungsprojekt Soundbild 2

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

75

23.03.2012, 14:02

Klar, Wurzel ziehen dauert nunmal länger, ist dafür aber korrekter (weil Kreis) als der Absolutwert einer einfachen Subtraktion (Rechteck).
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Schorsch

Supermoderator

Beiträge: 5 200

Wohnort: Wickede

Beruf: Student

  • Private Nachricht senden

76

23.03.2012, 14:44

Man kann anstatt einer Wurzel auch einfach mit dem Quadrat der Distanz rechnen. Die Multiplikation ist nicht so teuer wie die Wurzel und das Ergebnis bleibt gleich korrekt.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

77

23.03.2012, 15:04

Jup. Und immer noch korrekter als ein Quadrat durch absolute Differenzen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

FSA

Community-Fossil

  • Private Nachricht senden

78

01.04.2012, 15:12

Habe gerade was tolles in Newton 2.33 entdeckt:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
if(Player->Mat == Ground)
{
  Velocity = 100;
}
else if(Player->Mat == Air)
{
  Velocity = 100;
}
else
{
  Velocity = 100;
}

Anzumerken ist noch das es nur "IllegalRamp, Air, Ground" gibt :D

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veralteten strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

79

15.04.2012, 13:58

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
        // TODO FESTE BILDGRÖ?E IST DOOF!
        ubyte[] header = new ubyte[54];
        header[0] = 0x42;
        header[1] = 0x4d;
        header[2] = 0x36;
        header[3] = 0x30;
        header[4] = 0x2a;
        header[10] = 0x36;
        header[14] = 0x28;
        header[19] = 5u;
        header[22] = 0xd0;
        header[23] = 2u;
        header[26] = 1u;
        header[28] = 0x18;
        header[35] = 0x30;
        header[36] = 0x2a;
        header[38] = 13u;
        header[39] = 0x0b;
        header[42] = 13u;
        header[43] = 0x0b;


endlich die bmp Routine neu geschrieben, das konnte man ja so nicht stehen lassen...

frage mich nur, warum ich die zwei Tage davor damit verbracht habe, die Videoeinzelbilder als png speichern zu können. Irgendwie stimmt das Verhältnis zwischen "gesparten" Festplattenplatz (die meisten haben eh keinen Platzmangel) und - wegen der Komprimierung - längere Dauer der Aufnahme überhaupt nicht...
Musikvisualisierungsprojekt Soundbild 2

Architekt

Community-Fossil

Beiträge: 2 490

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

80

16.04.2012, 19:46

Vorgeschichte:
Kommilitone hat Problem mit seinem Programm und ich meinte, er solle sich einige puts (die wir im Unterricht auch hatten, sowie in der vorherigen Übung benutzen mussten) rein tun, damit er sieht, bis wohin sein Programm denn kommt (da Debugger ja nicht wirklich was für 4. Semestler sind).
Gesagt getan:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
puts

for(i = 0; i < count; i++) {
    puts
    
    for(j = 0; j < count; j++) {
        if(i == j) {
            continue;
        }
        else if (subset + part->values[j] < part->totalsum / 2) {
            subset += part->values[j];
            a[j] = part->values[j];
        }
        else if (subset + part->values[j] > part->totalsum / 2) {
            subset = 0;
        }
        else if (subset + part->values[j] == part->totalsum / 2) {
            subset += part->values[j];
            
            a[j] = part->values[j];
            
            puts return a;
        }
    }
    
    Clear(a, count);
}

puts return NULL;


Und dann noch die Frage wieso denn nun gar nichts mehr geht.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Werbeanzeige