Unconfigured Ad Widget

تقليص

إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

بعد تميز السينما .. جاء وقت البليندر ..

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • #16
    ابوصالح يحاول بناء الروابط القديمة تمهيدا للأنقلاب
    ..

    Refresh

    ..

    تعليق


    • #17
      المشاركة الأصلية بواسطة aktoom مشاهدة المشاركة
      أحس أنني أمام مندوبي شركات تسويق عندما أرى هذه المواضيع
      المعذرة
      المسلمون في أوج نهضتهم ، صنعوا حضارة شهدت لها فنونهم ، التي تركوها هنا وهناك ، في بغداد ودمشق والقدس والمغرب والأندلس ، والكثير الكثير من الأماكن ، بينما كانت أوروبا غارقة في بولها ، ولم يبنوا قبة الصخرة بالبلندر ولا قصر غرناطة بالسينما ، ولا الماكس ..... لو كان لدينا برنامج من صنعنا لحق لنا أن نتفاخر به وندافع عنه ، أما ( وقلتها كثيرا ) فنحن مجرد مستخدمين """""" حقيرين """""" كما طاب لأبوصالح أن يستخدم هذا التعبير ......


      أقصد إعملوا بصمت

      أعتقد أن معرفة عيوب البرامج ليست حرب أو صراعا...بل فائدة
      عندما تسمع أن فيلم أستخدم فيه آكثر من برنامج ....فلماذا ؟؟؟
      تسمع عن اللايتويف و المايا ............ آلخ
      فلماذا ؟؟

      تعليق


      • #18
        ليس هنالك عيوب في البرامج ... ولكنها تملك مميزات تفضلها عن بعضها

        انا عن نفسي اتعلمت الدرس خلاص ... الحمدلله جربت مجموعة كبيرة من البرامج لمشاهدة مميزاتها و مقارنتها و الحمدلله وجدت السينما يعطيني ما احتاج ... انا الان امامي مشوار طويل لن ينتهي ..!! و اظن انني ساكتفي بالسينما و " يمكن بعض البرامج المكملة له " و سينصب تركيزي بعد كده ان شاء الله على ال C++ لتعطيني تحكم اكبر في البرنامج

        بالتوفيق
        !!!! Ian Joyner ROCKS !!!!

        تعليق


        • #19
          شوف هذا الفائز بالمركز الاول في مسابقة ال Eon استخدم السينما و قام بكتابة كود ليسهل عليه وضع العدد الكبير من الكتب على الرفوف ....

          // -------------------------------------------------------------------
          // SBCGAL -
          // Stochastic Bookshelf Content Generator for Alexandria Library ... -

          // COFFEE script for Cinema4D R10 -
          // (c)2006 James Kaufeldt -

          // LICENCE: -
          // GNU General Public License - http://www.gnu.org/licenses/gpl.txt -
          // -------------------------------------------------------------------



          // CONSTANTS - Adjust these values to influence the overall result:

          var gap = 3, // inbetween padding, adds space to the right of each book
          w_min = 10, // mimimum width (thickness) for the books
          w_max = 60, // maximum width
          h_min = 200, // minimum height
          h_max = 340, // maximum height
          b_depth = 200, // constant depth for all books
          t_max = 0.4, // maximum angle (in radians, not degrees) for tilted books
          t_prob = 0.05, // probability factor for books to be tilted
          v_prob = 0.05, // probability factor for empty slots
          shelf_width = 2000, // total width of each shelf
          shelf_height = 400, // height of each shelf level
          shelf_num = 7; // total number of shelfs to fill

          // Do not edit code below this line unless you know what you are doing
          // -----------------------------------------------------------------------


          // PRE-DECLARATIONS:
          makeBook( rand, y_baseline, x_left, gap, w_min, w_max, h_min, h_max, b_depth, t_max, t_prob, v_prob, shelf_width );
          countMaterials(doc);
          addRandomMaterial(rand, doc, op);

          // GLOBALS:
          var previous_tilt = 0;
          var previous_empty = 0;
          var booknum = 0;
          var parent;

          // MAIN:
          main( doc, op )
          {
          // add a null object to hold the books:
          CallCommand(5140);
          parent = doc->GetActiveObject();
          parent->SetName("Books");

          // add and initialise random number generator instance:
          var rand = new(Random);
          rand->Init(time());

          var r = 0, y_base = 0, x_left = 0;

          // infinite loop - calls makeBook() repeatedly and breaks out when the bookshelf is filled up:
          while (true)
          {
          r = makeBook( rand, y_base, x_left, gap, w_min, w_max, h_min, h_max, b_depth, t_max, t_prob, v_prob, shelf_width );
          x_left = r;
          if (r == 0)
          {
          y_base += shelf_height;
          if (y_base/shelf_height >= shelf_num) break;
          }
          }
          CallCommand(100004767); // deselects all objects
          }

          // IMPLEMENTING makeBook():
          makeBook( rand, y_baseline, x_left, gap, w_max, w_min, h_max, h_min, b_depth, t_max, t_prob, v_prob, shelf_width )
          {
          // Calculate random dimensions for the new book:
          var xsize = (w_max - w_min) * rand->Get01() + w_min;
          var ysize = (h_max - h_min) * rand->Get01() + h_min;
          var zsize = b_depth;

          // Check if book should be tilted:
          var b_angle = 0;
          if (rand->Get01()<= t_prob && previous_tilt==false && previous_empty==false)
          {
          b_angle = t_max * rand->Get01();
          previous_tilt=true;
          } else {
          previous_tilt=false;
          }
          var tiltoffset = sin(b_angle)*(ysize);

          // Return 0 and discard book if there is not enough room on the current shelf:
          if ((shelf_width - x_left) <= xsize + tiltoffset)
          {
          return 0;
          }

          // Return new x_left and bail out without adding new book if this should be an empty slot:
          if (rand->Get01()<= v_prob && previous_tilt==false)
          {
          previous_empty==true;
          return (xsize + x_left + gap + tiltoffset);
          } else {
          previous_empty==false;
          }

          // Create the new book:
          CallCommand(5159); // adds a cube
          var bookob = GetActiveDocument()->GetActiveObject();
          bookob#PRIM_CUBE_LEN:VECTOR_X = xsize;
          bookob#PRIM_CUBE_LEN:VECTOR_Y = ysize;
          bookob#PRIM_CUBE_LEN:VECTOR_Z = zsize;

          // Calculate multiplier to direct tilts randomly to the left or right:
          var tbias = 0;
          if (int(rand->Get11()+0.5)){tbias=1;}else{tbias=-1;} // whoa, obfuscation...

          // Translate:
          bookob#ID_BASEOBJECT_POSITION:VECTOR_X = x_left + (xsize/2) + tiltoffset/2;
          bookob#ID_BASEOBJECT_POSITION:VECTOR_Y = y_baseline + (ysize/2);
          bookob#ID_BASEOBJECT_POSITION:VECTOR_Z = 0;
          bookob#ID_BASEOBJECT_ROTATION:VECTOR_Z = b_angle * tbias;

          // Place cube as child of parent null and give it a name and number:
          if(parent) {
          bookob->Remove();
          bookob->InsertUnder(parent);
          var booknumstring = tostring(booknum);
          bookob->SetName("book_"+booknumstring);
          booknum++;
          }

          // Apply random material:
          addRandomMaterial(rand, GetActiveDocument(), bookob);

          // Return the new x_left value to offset next run:
          return (xsize + x_left + gap + tiltoffset);
          }

          // IMPLEMENTING countMaterials(doc):
          countMaterials(doc)
          {
          // Returns the total number of available materials in the document:
          var mat = doc->GetFirstMaterial();
          var i = 0;
          while(mat) {
          i++;
          mat = mat->GetNext();
          }
          return i;
          }

          // IMPLEMENTING addRandomMaterial(...):
          addRandomMaterial(rand, doc, op)
          {
          // Calculate random number between 0 and max.materials:
          var random_material = int(rand->Get01() * countMaterials(doc));

          // create a texture tag and set it to UVW Mapping:
          var ttag = AllocTag(Ttexture);
          var tbc = ttag->GetContainer();
          tbc->SetData(TEXTURETAG_PROJECTION, 6);
          ttag->SetContainer(tbc);

          // loop through available materials until random number reached:
          var mat = doc->GetFirstMaterial();
          var i=0;
          while(i < random_material)
          {
          mat = mat->GetNext();
          i++;
          }

          // apply tag to object, then material to tag:
          op->InsertTag(ttag);
          ttag->SetMaterial(mat->GetMarker());
          }

          // ------------------------------------------------------ end ------------------------

          نتيجة الكود :::




          مشوار طوييييييييييييل .. لا اعتقد انني سوف اضيع كمان 6-10 شهور بتعلم في الاساسيات في برنامج جديد ...
          !!!! Ian Joyner ROCKS !!!!

          تعليق

          يعمل...
          X