3. ã“ã‚“ã«ã¡ã¯ç‰©ç†ä¸–界

ODE

ゲーム開発やロボットã®ç ”究者ã«ã‚‚使ã‚れã¦ã„るオープンソースã®ç‰©ç†è¨ˆç®—エンジンODE(Open Dynamics Engineã€ã‚ªãƒ¼ãƒ—ン ダイナミクスエンジン)を学ã¶ODEåˆç´šè¬›åº§ã®3回目ã§ã™ã€‚

今回ã¯ODEを使ã£ãŸã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œã‚’動力学計算を中心ã«åŸºæœ¬çš„ãªAPIã¨é–¢é€£ä»˜ã‘ã¦èª¬æ˜Žã—ã¾ã™ï¼Žã‚µãƒ³ãƒ—ルプログラムã¨ã—ã¦ã¯ï¼Œç‰©ç†ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã§æœ€ã‚‚ç°¡å˜ãªç‰©ä½“ã®è½ä¸‹ã‚’å–り上ã’ã¾ã™ï¼Žãƒ—ãƒ­ã‚°ãƒ©ãƒŸãƒ³ã‚°ã®æ•™ç§‘書ã§ã¯åˆã‚ã®ä¾‹é¡Œã¯Hello Worldを表示ã™ã‚‹ä¾‹ãŒå®šç•ªã§ã™ã€‚ã“ã“ã§ã¯Hello Worldã®ç‰©ç†ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ç‰ˆã‚’紹介ã—ã¾ã™ï¼Ž

ODEを使ã£ãŸã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œã‚’代表的ãªAPIã¨é–¢é€£ä»˜ã‘ã¦åˆ—挙ã—ã¾ã™ã€‚

  • ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œ
    • æç”»ç”¨é–¢æ•°ãƒ‰ãƒ­ãƒ¼ã‚¹ã‚¿ãƒƒãƒ•ã®è¨­å®š
      • カメラã®è¨­å®š dsSetViewPoint()
    • ODEã®åˆæœŸåŒ– dInitODE()
    • 動力学計算ã®ä¸–界worldã®ç”Ÿæˆ dWorldCreate()
    • é‡åŠ›åŠ é€Ÿåº¦ã®è¨­å®š dWorldSetGravity()
    • 剛体ã®ç”Ÿæˆ
      • 質é‡ã®è¨­å®š dBodySetMass()
      • ä½ç½®ã®è¨­å®š dBodySetPosition()
      • å§¿å‹¢ã®è¨­å®š dBodySetRotation()
    • シミュレーションループ(ã“ã®éƒ¨åˆ†ã¯ç¹°ã‚Šè¿”ã—実行ã•れる)
      • 動力学計算ã®å®Ÿæ–½ dWorldStep()
      • シミュレーションã«å¿…è¦ãªå‡¦ç†ã‚’書ã
    • 動力学worldã®ç ´å£Š dWorldDestroy()
    • ODEã®çµ‚了 dCloseODE()



  • 動力学計算

    ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œã§ã¯è‰²ã€…ãªAPIを使ã£ã¦ã„ã¾ã™ãŒã€ä»Šå›žã¯ç‰©ç†ã‚¨ãƒ³ã‚¸ãƒ³ã®æœ€ã‚‚é‡è¦ãªå‹•力学計算ã®ï¼¡ï¼°ï¼©ã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚動力学計算をã™ã‚‹APIã¯dWorldStep()ã¨dWorldQuickStep()ã§ã™ï¼Žé•ã„ã¯dWorldStep()ã®æ–¹ãŒç²¾åº¦ã¯é«˜ã„ã§ã™ãŒé€Ÿåº¦ã¯é…ã,dWorldQuickStep()ã¯ãã®é€†ã§ã™ï¼ŽdWorldStep()ã¨dWorldQuickStep()ã§ã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®çµæžœãŒé•ã†ã®ã§ï¼Œé€Ÿåº¦ã«å•題ãªã‘れã°ç²¾åº¦ã®é«˜ã„dWorldStep()を使ã£ã¦ãã ã•ã„.ã“れらã®APIã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã§æ¯Žå›žå‘¼ã³å‡ºã•ãªã‘れã°ã„ã‘ãªã„ã®ã§ã‚µãƒ³ãƒ—ルプログラムã®ã‚ˆã†ã«simLoop関数ã®ä¸­ã§å‘¼ã³å‡ºã—ã¦ãã ã•ã„.

    • void dWorldStep(dWorldID, dReal stepsize)ï¼›
    • シミュレーションを引数stepsieze[s]ã ã‘1ステップ進ã‚ã¾ã™ã€‚stepsizeã¯æ•°å€¤ç©åˆ†ã®æ™‚間刻ã¿å¹…ã€å˜ä½ã¯ç§’。大ãã„ã¨ç²¾åº¦ãŒæ‚ªããªã‚Šã¾ã™ãŒã€ã‚¹ãƒ”ードã¯é…ããªã‚Šã¾ã™ã€‚

    • void dWorldQuickStep(dWorldID, dReal stepsize);
    • シミュレーションを引数stepsize [s] ã ã‘1ステップ進ã‚ã¾ã™ã€‚ä¸Šã¨æ©Ÿèƒ½ã¯åŒã˜ã§ã™ãŒã€dWorldStep()よりã¯é«˜é€Ÿã§ã™ãŒã€ç²¾åº¦ã¯é«˜ããªã‚Šã¾ã™ï¼Ž

    • void dWorldSetQuickStepNumIteration(dWorldID, int num);
    • dWorldQuickStep()ã®ç¹°ã‚Šè¿”ã—計算ã®å›žæ•°ã‚’設定ã—ã¾ã™ï¼Žnumã®å€¤ã‚’大ããã™ã‚‹ã¨ç²¾åº¦ã¯é«˜ããªã‚Šã¾ã™ãŒé€Ÿåº¦ã¯é…ããªã‚Šã¾ã™ï¼Žã“ã®APIを呼ã³å‡ºã•ãªã„å ´åˆï¼Œã¤ã¾ã‚Šnumã®ãƒ‡ãƒ•ォルト値ã¯20ã§ã™ï¼Žä¸€èˆ¬çš„ã«ã¯dsSimulationLoop()を呼ã³å‡ºã™å‰ã«æŒ‡å®šã—ã¾ã™ï¼Ž

  • ソースコード
  • // Hello World  by ã§ã‚€
    #include <ode/ode.h>   // ODEã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ•ァイル(動力学計算用)
    #include <drawstuff/drawtuff.h> // ドロースタッフヘッダーファイル(3Dグラフィクス用)
    
    #ifdef  dDOUBLE
    #define dsDrawSphere dsDrawSphereD   // å˜ç²¾åº¦ã¨å€ç²¾åº¦ã®æç”»é–¢æ•°ã«å¯¾å¿œã™ã‚‹ãŠã¾ã˜ãªã„
    #endif
    
    static dWorldID world;  // 動力学計算用ワールド
    dBodyID ball;        // 玉
    const dReal radius = 0.2, mass = 1.0; // 玉ã®åŠå¾„(m)ã€çމã®é‡ã•(kg)
    
    // シミュレーションループ 毎回呼ã³å‡ºã•れ実行ã•れã¾ã™ã€‚
    // 動力学計算ã¯ã‚¹ãƒ†ãƒƒãƒ—サイズをã“ã“ã§æŒ‡å®šã™ã‚Œã°è‡ªå‹•çš„ã«è¨ˆç®—ã•れる
    // ãŸã ã—ã€æç”»ã¯ã“ã“ã§æ›¸ã‹ãªã„ã¨ä½•も表示ã•れã¾ã›ã‚“。
    static void simLoop (int pause)
    {
      const dReal *pos,*R; // ä½ç½®ã€å›žè»¢è¡Œåˆ—
      dWorldStep(world,0.05);  // シミュレーションã®ï¼‘ステップ進ã‚る。ãã®æ™‚é–“ã‚’0.05ç§’ã«è¨­å®šã€‚  
      dsSetColor(1.0,0.0,0.0);  // 色ã®è¨­å®šã€‚引数ã¯å…‰ã®ï¼“原色(赤ã€ç·‘ã€é’)。値ã¯ï¼ã‹ã‚‰ï¼‘.
      pos = dBodyGetPosition(ball);  // 玉ã®ä½ç½®ã‚’å–å¾—
      R = dBodyGetRotation(ball);   // 玉ã®å§¿å‹¢ã‚’å–å¾—
      dsDrawSphere(pos,R,radius);   //赤玉をæç”»
    }
    
    // ドロースタッフã®å‰å‡¦ç†é–¢æ•°
    void start()
    {
      // カメラã®è¨­å®š
      static float xyz[3] = {0.0,-3.0,1.0}; // 視点ã®ä½ç½® (x, y, z [m])
      static float hpr[3] = {90.0,0.0,0.0}; // è¦–ç·šã®æ–¹å‘(ヘッドã€ãƒ”ッãƒã€ãƒ­ãƒ¼ãƒ«[°])
      dsSetViewpoint (xyz,hpr);        // 視点ã®è¨­å®š
    }
    
    // メイン関数 ã“ã“ã‹ã‚‰èª­ã‚“ã§ãã ã•ã„。
    int main (int argc, char **argv)
    {
      dReal x0 = 0.0, y0 = 0.0, z0 = 1.0; // ボールã®åˆæœŸä½ç½®[m]
      dMass m1; // 質é‡ãƒ‘ラメータ構造体(質é‡ã€æ…£æ€§ãƒ¢ãƒ¼ãƒ¡ãƒ³ãƒˆãªã©ï¼‰
    
      // æç”»API(ドロースタッフ)ã®ãŠã¾ã˜ãªã„(設定)
      dsFunctions fn;     // ドロースタッフ構造体
      fn.version = DS_VERSION;   // ドロースタッフã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³
      fn.start = &start;  //  シミュレーションã®å‰å‡¦ç†é–¢æ•°
      fn.step = &simLoop;  // シミュレーションã®å„ステップã§å‘¼ã°ã‚Œã‚‹é–¢æ•°
      fn.command = NULL; // 関数ãŒãªã„ã®ã§NULLãƒã‚¤ãƒ³ã‚¿ã‚’指定
      fn.stop    = NULL;  // 関数ãŒãªã„ã®ã§NULLãƒã‚¤ãƒ³ã‚¿ã‚’指定
      fn.path_to_textures = "../../drawstuff/textures"; // テクスãƒãƒ£ã¸ã®ãƒ‘ス
    
      // 動力学計算用世界ã®å‰µé€ 
      dInitODE();                  // ODEã®åˆæœŸåŒ–
      world = dWorldCreate();     // 動力学計算ã®å¯¾è±¡ã¨ãªã‚‹å‰›ä½“を入れるworldを作る。戻り値ã¯ãã®ID番å·ã€‚
      dWorldSetGravity(world,0,0,-0.001); // é‡åŠ›åŠ é€Ÿåº¦ï¼ˆx, y, z)ã®è¨­å®šã€€ã€€-0.001 m/s^2
    
      // 玉を作る
      ball = dBodyCreate(world);  // 剛体を作る。戻り値ã¯ãã®ID番å·
      dMassSetZero(&m1);    // 質é‡ãƒ‘ラメータm1ã®åˆæœŸåŒ–
      dMassSetSphereTotal(&m1,mass,radius); // 質é‡ãƒ‘ラメータm1ã«å‰›ä½“ã®è³ªé‡ã‚’設定
      dBodySetMass(ball,&m1);   // 剛体ã«è³ªé‡ãƒ‘ラメータm1を設定
      dBodySetPosition(ball, x0, y0, z0);  // 剛体ballã®çµ¶å¯¾åº§æ¨™ã§ã®ä½ç½®(x, y, z)を設定
    
      // シミュレーション本体
      // argc, argvã¯main関数ã®å¼•æ•°ã€ã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ã‚µã‚¤ã‚º352 x 288ピクセル, fnã¯ãƒ‰ãƒ­ãƒ¼ã‚¹ã‚¿ãƒƒãƒ•構造
      dsSimulationLoop (argc,argv,352,288,&fn);
    
      // 世界ã®ç ´å£Š
      dWorldDestroy (world);  // 動力学計算ã®å¯¾è±¡ã§ã‚ã‚‹worldを破壊ã™ã‚‹  
      dCloseODE();            // ODEã®çµ‚了
      return 0;
    } 

    ã“れã¯èµ¤çމã®è‡ªç”±è½ä¸‹ã®ãƒ—ログラムã§ã™ã€‚ODEã®ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œã§ã¯ã€ã¾ãšã€dInitODE()ã§ODEã‚’åˆæœŸåŒ–ã—ã¾ã™ã€‚次ã«ã€ç‰©ç†è¨ˆç®—ã‚’ã™ã‚‹world(ワールド)をdWorldCreate()ã§ä½œã‚Šã¾ã™ã€‚物ç†è¨ˆç®—ã‚’å—ã‘る物体ã¯ãã®ä¸­ã«ä½œã‚‰ãªã‘れã°ãªã‚Šã¾ã›ã‚“。ODEã§ã¯ç‰©ä½“ã®ã“ã¨ã‚’body(ボディ)ã¨å‘¼ã‚“ã§ã„ã¾ã™ã€‚物体ã¯dBodyCreate(world)ã§ä½œã‚Šã¾ã™ã€‚物体を作ã£ãŸã‚‰ã€æ¬¡ã«ãã®è³ªé‡ãƒ‘ラメータã¨ä½ç½®ã‚„姿勢を設定ã—ã¾ã™ã€‚ã“ã®ãƒ—ログラムã§ã¯çƒã®è³ªé‡ãƒ‘ラメータã¨ä½ç½®ã ã‘を設定ã—ã¦ã„ã¾ã™ã€‚

    物体ã®ç”Ÿæˆã¨è¨­å®šãŒçµ‚ã‚ã£ãŸã‚‰ã€æ¬¡ã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’進ã‚ã¾ã™ã€‚ã“れã¯dsSimulationLoop()ã§ç¹°ã‚Šæ›¿ãˆã—simLoop関数ãŒå‘¼ã³å‡ºã™ã“ã¨ã«ã‚ˆã‚Šå®Ÿè¡Œã•れã¦ã„ã¾ã™ã€‚simLoop関数ã®dWorldStep(world, 0.05)ã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’1ステップ進ã‚ã¦ã„ã¾ã™ã€‚進ã‚る時間ã¯ï¼’番目ã®å¼•æ•°ã€ã“ã®å ´åˆã¯0.05ç§’ã¨ãªã‚Šã¾ã™ã€‚dsDrawSphere()ã§è½ä¸‹ã™ã‚‹çƒã‚’表示ã—ã¦ã„ã¾ã™ã€‚

    シミュレーションãŒçµ‚ã‚ã‚‹ã¨ï¼Œå¾Œç‰‡ä»˜ã‘を行ã„ã¾ã™ã€‚dWorldDestroy(world)ã§ãƒ¯ãƒ¼ãƒ«ãƒ‰ã‚’破壊ã—,dCloseODE()ã§ODEã®çµ‚了処ç†ã‚’ã—ã¾ã™ã€‚

    ãªãŠã€å°æ–‡å­—ã®dã§å§‹ã¾ã‚‹é–¢æ•°ã¯ODEã®API(application interface)ã§ã€dsã§å§‹ã¾ã‚‹é–¢æ•°ã¯drawstuff(ドロースタッフ)ã®APIã§ã™ã€‚drawstuffã¯ODE付属テストプログラム表示用ã®ãƒ©ã‚¤ãƒ–ラリã®ã“ã¨ã§ã™ã€‚

    登場ã—ãŸAPIã®è©³ç´°ã«ã¤ã„ã¦ã®èª¬æ˜Žã¯ã“ã“をクリックã—ã¦ãã ã•ã„.

    説明ã¯ã“ã®ãらã„ã«ã—ã¦ã‚µãƒ³ãƒ—ルプログラム3をダウンロードã€ãƒ“ルドã—ã¦å®Ÿè¡Œã—ã¦ã¿ã¾ã—ょã†ï¼Visual C++ 2008ã¨Code::Blocks 8.02用ã®ãƒ—ロジェクトファイルãŒåŒå°ã•れã¦ã„ã¾ã™ã€‚

    ã“ã“ã§ã¯é‡åŠ›åŠ é€Ÿåº¦ã‚’èµ¤çŽ‰ãŒã‚†ã£ãりè½ä¸‹ã—ã¦ã„ãã¾ã™ãŒã€ãªã‚“ã¨åœ°é¢ã‚’通り抜ã‘ã¦æ¶ˆãˆã¦ã—ã¾ã„ã¾ã™ã€‚実ã¯ä¸Šã®ãƒ—ログラムã«ã¯è¡çªæ¤œå‡ºæ©Ÿèƒ½ãŒçµ„ã¿è¾¼ã¾ã‚Œã¦ã„ãªã‹ã£ãŸã®ã§ã™ã€‚

    次回ã¯ODE付属ã®3Dグラフィクスライブラリdrawstuffã«ã¤ã„ã¦å­¦ã³ã¾ã—ょã†ã€‚

12 Responses to 3. ã“ã‚“ã«ã¡ã¯ç‰©ç†ä¸–界

  1. star MonsterID Icon star on 2010-08-17

    ã“ã‚“ã«ã¡ã¯ã€‚ã“ã®å¤ã‹ã‚‰ODEã‚’å§‹ã‚ãŸè€…ã§ã™ã€‚
    ã‹ãªã‚Šä¸­é€”åŠç«¯ãªè³ªå•ã«ãªã£ã¦ã—ã¾ã„ã¾ã™ãŒã€ãƒœãƒ¼ãƒ«ã®è½ä¸‹ã®ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã§ç”»é¢å†…ã®ãƒœãƒ¼ãƒ«ã‚’増やã™ã“ã¨ã£ã¦ã§ãã‚‹ã‚“ã§ã™ãŒï¼Ÿ

    • demu MonsterID Icon demu on 2010-08-17

      starã•ã‚“ã€

      ã¯ã˜ã‚ã¾ã—ã¦ã€

      ã§ãã¾ã™ã‚ˆã€‚

      上ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã§ã™ã¨ã€ãƒœãƒ¼ãƒ«ã®ç”Ÿæˆéƒ¨åˆ†ã§ã‚る56~6ï¼è¡Œç›®ã‚’ãƒœãƒ¼ãƒ«ã®æ•°ã ã‘追加ã—ã€è¡¨ç¤ºéƒ¨åˆ†ã®ï¼’ï¼‘ï½žï¼’ï¼“è¡Œç›®ã‚’ãƒœãƒ¼ãƒ«ã®æ•°ã ã‘追加ã™ã‚‹ã¨OKã§ã™ã€‚åŒã˜å½¢çжã®å ´åˆã¯ã€dBodyID ball[100];ãªã©ã¨é…列ã§å®£è¨€ã™ã‚‹ã¨ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’短ãã§ãã¾ã™ã€‚

      ãªãŠã€ãƒœãƒ¼ãƒ«ã§ã¯ã‚りã¾ã›ã‚“ãŒã€ãƒ‰ãƒŸãƒŽå€’ã—ã®ã‚µãƒ³ãƒ—ルプログラムãŒä»¥ä¸‹ã«ã‚りã¾ã™ã€‚ãŸã ã—ã€ODEをより簡å˜ã«ã™ã‚‹ãŸã‚ã«ã€è‡ªå‰ã®é–¢æ•°ã‚’多用ã—ã¦ã„ã¾ã™ã€‚良ã‚ã—ã‘れã°ã€ODEã§å­¦ã¶C言語2ã®è¨˜äº‹ã‚‚ã”覧ãã ã•ã„。
      http://demura.net/9ode/7524.html

      ã§ã‚€

      • demu MonsterID Icon demu on 2010-08-17

        starã•ん,

        ã“ã®æ‰‹ã®ã”質å•ãŒå¤šã‹ã£ãŸã®ã§ã‚µãƒ³ãƒ—ルプログラムを作りã¾ã—ãŸï¼Žä»¥ä¸‹ã®ç·´ç¿’ã«ã‚ã‚‹sample6multi-100817.zipをダウンロードã—ã¦ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’ã”å‚考ã«ã—ã¦ãã ã•ã„.
        ODEåˆç´šè¬›åº§ã€€ï¼–.è¡çªæ¤œå‡ºã€€http://demura.net/tutorials/ode6

        ã§ã‚€

      • star MonsterID Icon star on 2010-08-25

        返信ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
        試ã—ã«ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’変更ã—ã¦ã¿ãŸã®ã§ã™ãŒã†ã¾ãã„ãã¾ã›ã‚“。ã“れã£ã¦å…¨ãåŒã˜åº§æ¨™ã«ãƒœãƒ¼ãƒ«ãŒé‡ãªã£ã¦ã‚‹çŠ¶æ…‹ã ã¨æ€ã†ã®ã§ã™ãŒã€åº§æ¨™ã‚’ãšã‚‰ã™æ–¹æ³•ãŒè‰¯ã分ã‹ã‚Šã¾ã›ã‚“。
        自分ã¨ã—ã¦ã¯é›¢ã‚ŒãŸä½ç½®ã«ãƒœãƒ¼ãƒ«ã‚’二ã¤è¡¨ç¤ºã—ãŸã„ã®ã§ã™ãŒåˆæœŸä½ç½®ã®åº§æ¨™ãƒ‡ãƒ¼ã‚¿ã‚’二ã¤ã«ã—ã¦ã‚‚ã†ã¾ãã„ã‹ãªã„ã—ã©ã†ã„ã†ã“ã¨ã§ã—ょã†ã‹ï¼Ÿ

      • demu MonsterID Icon demu on 2010-08-25

        starã•ã‚“

        sample6multi-100817.zipを実行ã—ã€ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’読ã¾ã‚Œã¾ã—ãŸã‹ï¼Ÿ

        ã§ã‚€

  2. neko MonsterID Icon neko on 2009-12-18

    ã§ã‚€ã•ã‚“

    ãŠä¸–話ã«ãªã‚Šã¾ã—ãŸï¼Žã†ã¾ãhello.cbpãŒå‹•ãã¾ã—ãŸï¼Ž
    ã“れã‹ã‚‰ã¯ã§ã‚€ã•んページ+自力ã§å‹‰å¼·ã—ã¾ã™ï¼Ž

    ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸï¼Ž

  3. neko MonsterID Icon neko on 2009-12-17

    ã¨ã¦ã‚‚分ã‹ã‚Šã‚„ã™ã„サイトをã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼Ž
    ODEã‚’åˆã‚ã¦ä½¿ã£ã¦ã¿ã‚ˆã†ã¨å‹‰å¼·ã•ã›ã¦ã„ãŸã ã„ã¦ãŠã‚Šã¾ã™ï¼Ž
    ã•ã¦ï¼Œã‚µãƒ³ãƒ—ルプログラム(sample3.cbp)ãªã©ã‚’é–‹ã“ã†ã¨ã™ã‚‹ã¨

    mingw32-g++.exe – ディスクãŒã‚りã¾ã›ã‚“
    ドライブã«ãƒ‡ã‚£ã‚¹ã‚¯ãŒã‚りã¾ã›ã‚“.ディスクをドライブ D:ã«æŒ¿å…¥ã—ã¦ãã ã•ã„.

    ã¨ã„ã†ã‚¨ãƒ©ãƒ¼ãŒå‡ºã¦ï¼Œæ“作ä¸èƒ½ã«ãªã‚‹ã®ã§ã™ãŒï¼Œãã®ã‚ˆã†ãªäº‹ä¾‹ã”存知ã§ã—ょã†ã‹ï¼Ž
    アドãƒã‚¤ã‚¹ã„ãŸã ã‘ãŸã‚‰å¹¸ã„ã§ã™ï¼Ž
    よã‚ã—ããŠé¡˜ã„ã„ãŸã—ã¾ã™ï¼Ž

  4. demu MonsterID Icon demu on 2009-12-17

    nekoã•ん,

    コメントã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼Žåˆ†ã‹ã‚Šã‚„ã™ã„サイトã¨ã„ã£ã¦é ‚ã‘ã¦ã¨ã¦ã‚‚ã†ã‚Œã—ã„ã§ã™ï¼Ž

    ã•ã¦ï¼Œä»¥ä¸‹ã®ãƒ•ァイルã¯ã‚りã¾ã™ã‹ï¼Ÿ

    c:\Program Files\CodeBlocks\MinGW

    ãªã„å ´åˆã¯ï¼ŒMinGW付ãã®CodeBlocksをダウンロードã—ã¦ãã ã•ã„.

    ã§ã‚€

  5. neko MonsterID Icon neko on 2009-12-18

    ã§ã‚€ã•ã‚“

    早速ã«ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼Ž
    ã”æŒ‡æ‘˜ã®MinGWã¯ã‚りã¾ã™ï¼Ž
    今日ã¯ï¼Œcdpファイルã¯ãƒ€ãƒ–ルクリックã—ã¦ã‚‚codeblocksã¯èµ·å‹•ã•れるもã®ã®ï¼Œãƒ—ログラムã¯ä½•も表示ã•れãªã„状態ã§ã™ï¼Ž
    cppファイルã¯ãƒ—ログラムãŒè¡¨ç¤ºã•れã¾ã™ãŒï¼Œãƒ“ルドã™ã‚‹ã¨ã‚¨ãƒ©ãƒ¼å¤šæ•°ã§ï¼Œode/ode.hã¨drawstuff/drawstuff.hãŒNo Such Fileã«ãªã£ã¦ã„ã¾ã™ï¼Ž
    ã§ã‚€ã•ã‚“ã‚‚codeblocksã®verã¯8.02ã§ã™ã‹ï¼Ž
    ビルドFeb 27 2008ã¨ãªã£ã¦ã„ã¾ã™ï¼Ž

    èµ·å‹•ãŒã†ã¾ãã„ã‘ã°ï¼Œæ¥½ã—ãéŠã¹ãã†ãªã®ã§ã™ãŒï¼ŒãŠæ‰‹æ•°ã‚’ãŠã‹ã‘ã—ã¾ã™ãŒï¼Œã©ã†ãžã‚ˆã‚ã—ããŠé¡˜ã„ã—ã¾ã™ï¼Ž

  6. neko MonsterID Icon neko on 2009-12-18

    ã†ã¾ãã„ãã¾ã—ãŸã®ã§ï¼Œã“れã¯ç„¡ã—ã§å¤§ä¸ˆå¤«ã§ã™ï¼Ž

  7. demu MonsterID Icon demu on 2009-12-18

    後学ã®ãŸã‚ã«ã†ã¾ãã„ã‹ãªã‹ã£ãŸåŽŸå› ã‚’æ•™ãˆã¦é ‚ã‘ã¾ã™ã‹ï¼Ÿ

    ã§ã‚€

  8. demu MonsterID Icon demu on 2009-12-19

    ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ï¼Ž

    ã¾ãŸï¼Œã‚³ãƒ¡ãƒ³ãƒˆãã ã•ã„ã­ï¼Ž

    ã§ã‚€

コメントをã©ã†ãž

メールアドレスãŒå…¬é–‹ã•れるã“ã¨ã¯ã‚りã¾ã›ã‚“。

3,719 views