SetObjectMaterial mehrere objecte auf einmal?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Moin ,


    wollte fragen ob man mit SetObjectMaterial mehrere objecte auf einmal machen kann ???
    also ich dachte an so was :



    gras = CreateObject(3095, 1094.59998, -1317.90002, 12.1, 0, 0, 0);
    gras = CreateObject(3095, 1094.59998, -1308.90002, 12.1, 0, 0, 0);
    gras = CreateObject(3095, 1085.59998, -1326.90002, 12.1, 0, 0, 0);
    gras = CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0);
    new gras = CreateObject(3095, 1085.59998, -1317.90002, 12.1, 0, 0, 0);


    SetObjectMaterial(gras,0,8420,"lawnpark","Grass_128HV",0);


    krieg aber dann : undefined symbol "gras"

  • Ungetestet:


    new gras[5];



    gras[0] = CreateObject(3095, 1094.59998, -1317.90002, 12.1, 0, 0, 0);
    gras[1] = CreateObject(3095, 1094.59998, -1308.90002, 12.1, 0, 0, 0);
    gras[2] = CreateObject(3095, 1085.59998, -1326.90002, 12.1, 0, 0, 0);
    gras[3] = CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0);
    gras[4] = CreateObject(3095, 1085.59998, -1317.90002, 12.1, 0, 0, 0);


    for(new i = 0;i<sizeof(gras);i++)
    {
    SetObjectMaterial(i,0,8420,"lawnpark","Grass_128HV",0);
    }


    Mit der for(new Schleife, gehe ich durch alle Objekte (gras) durch, und kann sie dann in der Schleife mit "i" ansprechen (Alle!)

  • Mhh was ist wenn ich das so mache :



    gras1 = CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0);
    gras2 = CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0);


    SetObjectMaterial(gras1,0,8420,"lawnpark","Grass_128HV",0);
    SetObjectMaterial(gras2,0,8420,"lawnpark","Grass_128HV",0);


    Es ist vil nicht platz sparend aber wenn ich eine schleife mit vielen objecten habe wird das nicht viel resosen verbauchen oder wie das heißt ?
    oder wird beides gleich viel verbrauchen ?
    was währe am besten ?


  • new gras = CreateObject(3095, 1094.59998, -1317.90002, 12.1, 0, 0, 0);
    SetObjectMaterial(gras,0,8420,"lawnpark","Grass_128HV",0);
    gras = CreateObject(3095, 1094.59998, -1308.90002, 12.1, 0, 0, 0);
    SetObjectMaterial(gras,0,8420,"lawnpark","Grass_128HV",0);
    gras = CreateObject(3095, 1085.59998, -1326.90002, 12.1, 0, 0, 0);
    SetObjectMaterial(gras,0,8420,"lawnpark","Grass_128HV",0);
    gras = CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0);
    SetObjectMaterial(gras,0,8420,"lawnpark","Grass_128HV",0);
    gras = CreateObject(3095, 1085.59998, -1317.90002, 12.1, 0, 0, 0);



    was auch funktionieren würde:



    SetObjectMaterial(CreateObject(3095, 1094.59998, -1317.90002, 12.1, 0, 0, 0),0,8420,"lawnpark","Grass_128HV",0);
    SetObjectMaterial(CreateObject(3095, 1094.59998, -1308.90002, 12.1, 0, 0, 0),0,8420,"lawnpark","Grass_128HV",0);
    SetObjectMaterial(CreateObject(3095, 1085.59998, -1326.90002, 12.1, 0, 0, 0),0,8420,"lawnpark","Grass_128HV",0);
    SetObjectMaterial(CreateObject(3095, 1077.09998, -1326.90002, 12.1, 0, 0, 0),0,8420,"lawnpark","Grass_128HV",0);
    SetObjectMaterial(CreateObject(3095, 1085.59998, -1317.90002, 12.1, 0, 0, 0),0,8420,"lawnpark","Grass_128HV",0);


  • Es ist vil nicht platz sparend aber wenn ich eine schleife mit vielen objecten habe wird das nicht viel resosen verbauchen oder wie das heißt ?
    oder wird beides gleich viel verbrauchen ?
    was währe am besten ?


    Es heißt Ressourcen :)


    und es ist sparender wenn du nur 1ne Variable machst, anstatt 5 oder so ^^
    Was irgendwie ja auch logisch ist...dann wird nämlich nur 1ne Variable im Speicher angelegt und nicht 5...


    Wieso ist eine Schleife nicht passend?


    Ist sie :)


    Wieso wird dafür mehr Zeit verbraucht?


    Nun, es wird mehr Zeit verbrauchst...aber wir reden hier von 0.01ms oder so ^^ Und das nur 1x nämlich wenn der Callback OnGameModeInit aufgerufen wird...
    Abgesehen davon, dass es 0.001ms länger dauert, hat man Zeilen gespart, es ist eine schönere Übersicht und man kann Problemlos auch noch 99 weitere Texturen dran hängen ;)


    //Edit:
    Was H4rd_B4se am Ende seines Beitrags geschrieben hat, ist auch eine sehr elegante Lösung! :)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Meiner Meinung nicht da du statt nur 1 ner Varriable gleich einen array anlegst,...
    Am besten ist die Methode wo das Objekt erst in der SetObjectMaterial Funktion erstellt wird
    aber dann kannste nur eine Textur draufpacken

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen