ODE講座5:Hello World ! ã“ã‚“ã«ã¡ã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®ä¸–界

2008-07-08
By

2008-7-10: dInitODE(), dCloseODE()ã®è¿½åŠ 


ゲーム開発やロボットã®ç ”究者ã«ã‚‚使ã‚れã¦ã„るオープンソースã®ç‰©ç†è¨ˆç®—エンジンODE(Open Dynamics Engineã€ã‚ªãƒ¼ãƒ—ン ダイナミクスエンジン)を学ã¶ODE講座ã®5回目ã§ã™ã€‚
今回ã¯ODE(Open Dynamics Engine)を使ã£ãŸè¶…ç°¡å˜ãªã‚µãƒ³ãƒ—ルプログラムを紹介ã—ã¾ã™ã€‚ãƒ—ãƒ­ã‚°ãƒ©ãƒŸãƒ³ã‚°ã®æ•™ç§‘書ã§ã¯åˆã‚ã®ä¾‹é¡Œã¯Hello WorldãŒå®šç•ªã§ã™ã€‚ã“ã“ã§ã‚‚ãã†ã—ã¾ã—ょã†ã€‚
ODE
è½ä¸‹ã™ã‚‹èµ¤ã„林檎?上ã®ç”»åƒã¯ãã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã§ã™ã€‚


ODEを使ã£ãŸã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®æµã‚Œã‚’代表的ãªAPIã¨é–¢é€£ä»˜ã‘ã¦åˆ—挙ã—ã¾ã™ã€‚ODE-0.10ã‹ã‚‰dInitODE()ã§åˆæœŸåŒ–ã—,dCloseODE()ã§çµ‚了ã—ãªã‘れã°ã‚¨ãƒ©ãƒ¼ã«ãªã‚Šã¾ã™ï¼Ž

  • æç”»ç”¨é–¢æ•°ãƒ‰ãƒ­ãƒ¼ã‚¹ã‚¿ãƒƒãƒ•ã®è¨­å®š
    • カメラã®è¨­å®š dsSetViewPoint()
  • ODEã®åˆæœŸåŒ– dInitODE()
  • 動力学計算ã®ä¸–界worldã®ç”Ÿæˆ dWorldCreate()
  • é‡åŠ›åŠ é€Ÿåº¦ã®è¨­å®š dWorldSetGravity()
  • 剛体ã®ç”Ÿæˆ
    • 質é‡ã®è¨­å®š dBodySetMass()
    • ä½ç½®ã®è¨­å®š dBodySetPosition()
    • å§¿å‹¢ã®è¨­å®š dBodySetRotation()
  • シミュレーションループ(ã“ã®éƒ¨åˆ†ã¯ç¹°ã‚Šè¿”ã—実行ã•れる)
    • 動力学計算ã®å®Ÿæ–½ dWorldStep()
    • シミュレーションã«å¿…è¦ãªå‡¦ç†ã‚’書ã
  • 動力学worldã®ç ´å£Š dWorldDestroy
  • ODEã®çµ‚了 dCloseODE()
    • dBodyID dBodyCreate(dWorldID world)
      剛体を作りã€ãã®ID番å·ã‚’戻り値ã¨ã—ã¦è¿”ã™
    • const dReal *dBodyGetPosition(dBodyID body)
      剛体bodyã®é‡å¿ƒä½ç½®ã‚’å–å¾—ã—ãã®ãƒã‚¤ãƒ³ã‚¿ã‚’è¿”ã™
    • const dReal *dBodyGetRotation(dBodyID body)
      回転行列をå–å¾—ã—ãã®ãƒã‚¤ãƒ³ã‚¿ã‚’è¿”ã™
    • void dBodySetMass(dBodyID body, const dMass *mass)
      剛体bodyã«è³ªé‡ãƒ‘ラメータmassを設定ã™ã‚‹
    • void dBodySetPosition(dBodyID body, dReal x, dReal y, dReal z)
      剛体bodyã®é‡å¿ƒã‚’絶対座標系(x,y,z)ã®ä½ç½®ã«è¨­å®šã™ã‚‹
    • void dBodySetRotation(dBodyID body, const dMatrix3 R)
      剛体bodyを回転行列Rã§è¡¨ã™å§¿å‹¢ã«è¨­å®šã™ã‚‹
    • dGeomID dCreateBox(dSpaceID space, dReal lx, dReal ly, dReal lz)
      spaceã«å„辺ã®é•·ã•(lx,ly,lz)ã®ç›´æ–¹ä½“ジオメトリを生æˆã™ã‚‹
    • dGeomID dCreateCylinder(dSpaceID space, dReal r, dReal l)
      åŠå¾„rã€é•·ã•lã®å††æŸ±ã‚¸ã‚ªãƒ¡ãƒˆãƒªã‚’生æˆã—ã€ãã®ID番å·ã‚’è¿”ã™
    • dGeomID dCreatePlane(dSpaceID space ,dReal a, dReal b, dReal c, dReal d)
      spaceã«ax+by+cz=dã®å¹³é¢ã‚¸ã‚ªãƒ¡ãƒˆãƒªã‚’生æˆã™ã‚‹
    • void dGeomSetBody(dGeomID geom, dBodyID body)
      物体ã®2ã¤ã®å±žæ€§ã§ã‚るジオメトリgeomã¨å‰›ä½“bodyを関連ã¥ã‘ã‚‹
    • dSpaceID dHashSpaceCreate(0)
      è¡çªè¨ˆç®—用スペースを生æˆã—ã€ãã®ID番å·ã‚’è¿”ã™
    • void dJointGroupEmpty(dJointGroupID)
      æŽ¥è§¦ç‚¹ãŒæ ¼ç´ã•れã¦ã„るジョイントグループを空ã«ã™ã‚‹
    • void dJointAttach(dJointID joint, dBodyID body1, dBodyID dBody2)
      剛体body1ã¨body2ã«ã‚¸ãƒ§ã‚¤ãƒ³ãƒˆjointã‚’å–り付ã‘ã‚‹
    • dJointGroupID dJointGroupCreate(0)
      接触点ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‚’æ ¼ç´ã™ã‚‹ã‚¸ãƒ§ã‚¤ãƒ³ãƒˆã‚°ãƒ«ãƒ¼ãƒ—を生æˆã—ã€ãã®ID番å·ã‚’è¿”ã™
    • void dMassSetBoxTotal(dMass *mass, dReal m, dReal lx, dReal ly, dReal lz)
      サイズ(lx,ly,lz)ã€å…¨è³ªmã®ç›´æ–¹ä½“ã®è³ªé‡ãƒ‘ラメータmassを計算ã™ã‚‹
    • void dMassSetCylinderTotal(dMass *mass, dReal m, int dir, dReal r, dReal l)
      æ–¹å‘dir(1=x,2=y,3=z)ã€åŠå¾„rã€é•·ã•lã€å…¨è³ªé‡mã®å††æŸ±ã®è³ªé‡ãƒ‘ラメータmassを計算ã™ã‚‹
    • void dMassSetZero(dMass *mass)
      質é‡ãƒ‘ラメータmassã®è¦ç´ ã‚’0ã«åˆæœŸåŒ–ã™ã‚‹
    • void dRFromAxisAndAngle(dMatrix3 R, dReal ax, dReal ay, dReal az, dReal angle)軸ベクトル(ax,ay,az)周りã«angle[rad]回転ã•ã›ãŸæ™‚ã®å›žè»¢è¡Œåˆ—Rを求ã‚ã‚‹
    • void dSpaceCollide(dSpaceID space, void *data, dNearCallback *callback)
      spaceã§è¡çªã™ã‚‹å¯èƒ½æ€§ã®ã‚ã‚‹2ã¤ã®ã‚¸ã‚ªãƒ¡ãƒˆãƒªã‚’é¸ã³å‡ºã—ã€å¼•æ•°ã®callback関数を呼ã³å‡ºã™ã€‚dataã¯callbacké–¢æ•°ã¸æ¸¡ã™ãƒ‡ãƒ¼ã‚¿ã¸ã®ãƒã‚¤ãƒ³ã‚¿
    • dWorldID dWorldCreate()
      物ç†è¨ˆç®—用ワールドを生æˆã—ã€ãã®ID(識別)番å·ã‚’戻り値ã¨ã—ã¦è¿”ã™
    • void dWorldDestroy(dWorldID world)
      物ç†è¨ˆç®—用ワールドworldを破壊ã™ã‚‹
    • void dWorldSetGravity(dWorldID world, dReal x, dReal y, dReal z)
      ワールドworldã«(x,y,z)[m/s2]ã®é‡åŠ›åŠ é€Ÿåº¦ã‚’è¨­å®šã™ã‚‹
    • void dWorldStep(dWorldID world, dReal step_size)
      ワールドworldã®ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’1ステップ進ã‚る。2番目ã®å¼•æ•°step_sizeã¯ç©åˆ†ã®ã‚¹ãƒ†ãƒƒãƒ—時間[s]
    • void dsDrawBoxD(const double pos[3], const double R[12], const double sides[3])ä½ç½®posã«å›žè»¢è¡Œåˆ—Rã‚’å–るサイズsidesã®ç›´æ–¹ä½“ã‚’æç”»ã™ã‚‹
    • void dsSetViewPoint(float xyz[3], float hpr[3])
      視点xyzã¨è¦–ç·šhpr[°]を設定ã™ã‚‹
    • void dsSimulationLoop(int argc, char **argv,int w, int h, dsfunction *fn)
      シミュレーションループを呼ã³å‡ºã™ã€‚1ã€2番目ã®å¼•æ•°ã¯main関数ã®å¼•æ•°ã§ã€3,4ç•ªç›®ã¯æç”»ã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ã®å¤§ãã•(横w,縦h)ã§ã€5番目ã®å¼•æ•°ã¯æç”»é–¢æ•°ã‚¯ãƒ©ã‚¹

  • 次ã«ã€è©³ã—ã„コメントã®ã¤ã„ãŸã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’以下ã«ç¤ºã—ã¾ã™ã€‚main関数ã‹ã‚‰èª­ã‚“ã§ãã ã•ã„。

    [cpp]
    
    / / Hello World  by ã§ã‚€
    
    #include    // ODEã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ•ァイル(動力学計算用)
    
    #include // ドロースタッフヘッダーファイル(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, dReal 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"; // テクスãƒãƒ£ã¸ã®ãƒ‘ス
    
    // 動力学計算用世界ã®å‰µé€ 
    
      world = dWorldCreate(); // 動力学計算ã®å¯¾è±¡ã¨ãªã‚‹å‰›ä½“を入れるworldを作る。戻り値ã¯ãã®ID番å·ã€‚
    
      dWorldSetGravity(world,0,0,-0.001); // é‡åŠ›åŠ é€Ÿåº¦ï¼ˆx, y, z)ã®è¨­å®šã€€ã€€-0.001 m/s^2
    
    // 玉を作る
    
      ball = dBodyCreate(world);        //  剛体(body)を作る。戻り値ã¯ãã®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を破壊ã™ã‚‹
    
    return 0;
    
    }
    
    [/cpp]

    ã“れã¯èµ¤çމã®è‡ªç”±è½ä¸‹ã®ãƒ—ログラムã§ã™ã€‚ã“れãŒãªãœHello Worldã‹ã¨ã„ã†ã¨ã€ä¸Šã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã§worldã¯å‹•力学計算をã™ã‚‹ä¸–界ã®ã“ã¨ã§ã™ã€‚動力学計算ã®Worldã«åˆã‚ã¦ãŠç›®ã«ã‹ã‹ã£ãŸã®ã§ã“ã®ã‚³ãƒ¼ãƒ‰ã‚‚Hello Worldã¨å‘¼ã¶ã“ã¨ã«ã—ã¾ã—ょã†ã€‚

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

    説明ã¯ã“ã®ãらã„ã«ã—ã¦ã“ã®ãƒ•ァイル(sample1-071001.tgz)をダウンロードã—ã¦ä»¥ä¸‹ã®æ‰‹é †ã§å®Ÿè¡Œã—ã¦ã¿ã¾ã—ょã†ï¼

    実行方法
    1. sample1-071001.tgzã‚’/home/ユーザå/src/ode-ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·/myprogã®ä¸‹ã«ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰
    2. ã“れã‹ã‚‰ã¯ã‚¿ãƒ¼ãƒŸãƒŠãƒ«ã§ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¦ãã ã•ã„。$ã¯ãƒ—ロンプトã§ã™ã€‚
    $ cd /home/ユーザå/src/ode-ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·/myprog
    $ tar xvzf sample1-071001.tgz
    $ cd sample1
    $ make
    3. 実行
    $ ./sample1

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

    今回登場ã—ãŸAPI


    更新履歴

    • 2008-7-10: dInitODE(), dCloseODE()ã®è¿½åŠ 
    • 2008-4-14: 実行方法ã®ãƒ•ァイルåã®é–“é•ã„を訂正
    • 2008-1-13: ソースコードを整形ã—ãŸ
    • 2007-10-1: sample1ã®makefileを変更ã—ã¦æ€’ã‚‰ã‚Œãšæ¸ˆã‚€ã‚ˆã†ã«ã—ãŸã€‚
    • 2007-1-20: 本文ã®èª¬æ˜Žä¸¦ã³ã«ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’より詳ã—ãã—ã€API集をåŽéŒ²ã—ãŸã€‚

35 Responses to ODE講座5:Hello World ! ã“ã‚“ã«ã¡ã¯ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã®ä¸–界

  1. demu MonsterID Icon demu on 2008-06-03

    mamoã•ん,

    解決ã—ã¦ä½•よりã§ã™ï¼Žã¾ãŸï¼Œä½•ã‹ã‚れã°ã‚³ãƒ¡ãƒ³ãƒˆãã ã•ã„.

    ã§ã‚€

  2. mamo MonsterID Icon mamo on 2008-06-02

    ãŠè¿”事ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
    インストールをやり直ã—ãŸã‚‰sampleãŒæ­£å¸¸ã«å‹•ãよã†ã«ãªã‚Šã¾ã—ãŸã€‚

    ç°¡å˜ãªã“ã¨ã§è³ªå•ã—ã¦ã—ã¾ã„ã™ã¿ã¾ã›ã‚“。
    ã“れã‹ã‚‰ã‚‚demuroã§å‹‰å¼·ã‚’é ‘å¼µã£ã¦ã„ããŸã„ã¨æ€ã†ã®ã§ã‚ˆã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

  3. demu MonsterID Icon demu on 2008-05-31

    mamoã•ん,

    åˆã‚ã¾ã—ã¦ï¼Ž

    windresãŒè¦‹ã¤ã‹ã‚‰ãªã„よã†ã§ã™ã­ï¼Ž

    /mingw/bin/windresãŒã‚りã¾ã™ã‹ï¼Ÿ

    windresã¯MinGWã«ã¤ã„ã¦ãã‚‹ã®ã§ï¼ŒMinGWã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãŒå®Œå…¨ã«ã§ãã¦ã„ãªã„å¯èƒ½æ€§ãŒã‚りã¾ã™ï¼Žä¸€åº¦ï¼Œã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã¦ã‹ã‚‰ï¼Œæ³¨æ„æ·±ã入れ直ã—ã¦ãã ã•ã„. 

    ã§ã‚€

  4. mamo MonsterID Icon mamo on 2008-05-30

    ã¯ã˜ã‚ã¾ã—ã¦ã€‚mamoã¨ã„ã„ã¾ã™ã€‚
    demuro.netã‚’å‚考ã«ODEã®å‹‰å¼·ã‚’ã•ã—ã¦ã‚‚らã£ã¦ã„ã¾ã™ã€‚

    今回ã€è¬›åº§5ã®sample1を実行ã—よã†ã¨ã—ãŸã®ã§ã™ãŒã€makeã‚’ã—ãŸã¨ãã«ä»¥ä¸‹ã®ã‚ˆã†ãªã‚‚ã®ãŒå‡ºã¦ãã¦ã—ã¾ã„ã€makeã§ãã¾ã›ã‚“。

    windres ../../drawstuff/src/resources.rc -O coff resources.o
    make: windres: コマンドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ
    make: *** [resources.o] エラー 127

    質å•コーナーをå‚考ã«ã—ã€mekefileã§ãŠã‹ã—ã„æ‰€ãŒãªã„ã‹è¦‹ã¦ã€ã„ã‚ã„ã‚試行錯誤ã—ã¦ã¿ã¾ã—ãŸãŒã€ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
    ã‚‚ã—ã€è§£æ±ºæ³•ãŒä½•ã‹ã‚りã¾ã—ãŸã‚‰æ•™ãˆã¦ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

  5. demu MonsterID Icon demu on 2008-04-22

    åˆå¿ƒè€…Jã•ã‚“ã€

    ã”連絡ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚

    ODE講座ã®ã‚µãƒ³ãƒ—ルプログラムã¯å¤ã„ã®ã§ã€æœ€æ–°ã®ODEã«makefileãŒå分ã«å¯¾å¿œã§ãã¦ã„ãªã„å¯èƒ½æ€§ã‚‚ã‚りã¾ã™ã€‚ã†ã¾ãã„ã‹ãªã„原因ã®ã»ã¨ã‚“ã©ã¯ã€makefileã«æ›¸ã„ã¦ã‚るライブラリã®å ´æ‰€ã«ã€ãƒ©ã‚¤ãƒ–ラリãŒãªã„å ´åˆã§ã™ã€‚

    make installを忘れãŸã‚Šã€ã‚ã‚‹ã„ã¯ã€./configure –enable-double-percisionã¨æ‰“ã¤ã¨ãã«ã‚¹ãƒšãƒ«ãƒŸã‚¹ã‚’ã—ãŸã‚Šã€enableã®å‰ã«” – “ãŒï¼’個必用ãªã®ã‚’é–“é•ã£ã¦ï¼‘個ã«ã—ãŸã‚Šã™ã‚‹å ´åˆã§ã™ã€‚

    ã¾ãŸã€ã†ã¾ãã„ã‹ãªã„箇所ãŒã‚れã°ã”連絡ãã ã•ã„。

    ã§ã‚€

  6. åˆå¿ƒè€…J MonsterID Icon åˆå¿ƒè€…J on 2008-04-22

    ã¯ã˜ã‚ã¾ã—ã¦ã€æœ€è¿‘ODEã«ç€æ‰‹ã—å§‹ã‚ãŸè€…ã§ã™ã€‚

    自分も悩ã‚ã‚‹åˆå¿ƒè€…æ§˜åŒæ§˜ã€makeãŒé€šã‚‰ãšï¼ˆåŒã˜ã‚¨ãƒ©ãƒ¼æ–‡ãŒå‡ºãŸï¼‰è‹¦æˆ¦ã—ã¦ã„ã¾ã—ãŸãŒã€è§£æ±ºã§ãã¾ã—ãŸã€‚
    講義2ã®crashãŒå‡ºæ¥ãŸäººã¯ã€ode-0.9内ã«ã‚る configure configure.in をコピーã—ã¦ã€sample1やらsample2ã«å…¥ã‚Œã¦ã€makeã®å‰ã«./configure –enable-double-percision
    ã®å¾Œã«makeã™ã‚Œã°ã¨ãŠã‚Šã¾ã—ãŸï¼

  7. æ‚©ã‚ã‚‹åˆå¿ƒè€… MonsterID Icon æ‚©ã‚ã‚‹åˆå¿ƒè€… on 2008-04-16

    ã©ã†ã«ã‹è‡ªå·±è§£æ±ºã™ã‚‹ã“ã¨ãŒã§ãã¾ã—ãŸã€‚

    1度ODEコンパイルã—ãªãŠã—ãŸã‚‰ã§ãるよã†ã«ãªã‚Šã¾ã—ãŸã€‚
    長々ã¨è³ªå•ã—ã¦ã—ã¾ã„申ã—訳ã‚りã¾ã›ã‚“ã§ã—ãŸã€‚
    今後ã¨ã‚‚よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

  8. æ‚©ã‚ã‚‹åˆå¿ƒè€… MonsterID Icon æ‚©ã‚ã‚‹åˆå¿ƒè€… on 2008-04-16

    ã§ã‚€ã•ã‚“ã€
    返信ã‚りãŒã¨ã†å¾¡åº§ã„ã¾ã™ã€‚

    エラーã¯å‰å›žä¸Šã’ãŸåˆ†ã ã‘ã§ã™ã€‚
    ã¾ãŸã€è¬›ç¾©ï¼–ã®ãƒ—ログラムã§ã‚‚試ã—ã¾ã—ãŸãŒåŒæ§˜ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºã¦ãã¾ã—ãŸã®ã§ã€ä½•ã‹æ ¹æœ¬çš„ãªã¨ã“ã‚ã‚’é–“é•ã£ã¦æã‚ŒãŒã‚ã‚‹ã®ã§ã‚‚ã†å°‘ã—調ã¹ã¦ã¿ã¾ã™ã€‚

  9. demu MonsterID Icon demu on 2008-04-15

    æ‚©ã‚ã‚‹åˆå¿ƒè€…ã•ã‚“ã€

    サンプルプログラムã¯sample1-071001.tgzã¨ã„ã†åå‰ã§ã€ã‚µãƒ¼ãƒãƒ¼ã«ç½®ã„ã¦ã„ã¾ã™ã€‚ダウンロードã™ã‚‹ç’°å¢ƒã«ã‚ˆã£ã¦ã¯å¼·åˆ¶çš„ã«æ‹¡å¼µå­ãŒtarã«å¤‰ã‚るよã†ã§ã™ã€‚

    ã•ã¦ã€ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã§ã™ãŒã€ã“れã§å…¨éƒ¨ã§ã—ょã†ã‹ï¼Ÿä»–ã«ã‚‚ã‚ã£ãŸã‚‰æ•™ãˆã¦ãã ã•ã„。情報ãŒå°‘ãªã™ãŽã¦åŽŸå› ã‚’ç‰¹å®šã§ãã¾ã›ã‚“。

    ã§ã‚€

  10. æ‚©ã‚ã‚‹åˆå¿ƒè€… MonsterID Icon æ‚©ã‚ã‚‹åˆå¿ƒè€… on 2008-04-15

    ãŸã³ãŸã³ã™ã„ã¾ã›ã‚“。
    追加ã—ã¾ã™ã€‚
    å…ˆã»ã©ã§ããªã‹ã£ãŸç†ç”±ã¯ã€tar xvzf sample1-071001.tgzã¨è¨˜è¼‰ã•れã¦ã¾ã™ãŒ
    ファイルをプロパティã§èª¿ã¹ãŸçµæžœsample1-071001.tarã§ã—ãŸã€‚
    tar xvzf sample1-071001.tarã§è©¦ã—ãŸã‚‰ç„¡äº‹ã«é€šéŽã§ãã¾ã—ãŸãŒã€
    makeã®ã¨ã“ã‚ã§ä»¥ä¸‹ã®ã‚¨ãƒ©ãƒ¼ãŒå‡ºã¦ãã¦ã—ã¾ã„ã¾ã™ã€‚
    $ make
    g++ -Wall -fno-exceptions -fno-rtti -g -DWIN32 -mwindows -o sample1 sample1.o -L../../drawstuff/src -L../../ode/src -L/usr/X11R6/lib -L/usr/local/lib -L/usr/lib/w32api/lib -I. -I../../include -I/usr/X11R6/include -I/usr/include -I/usr/include/w32api/include -lode -ldrawstuff -lstdc++ -lcomctl32 -lkernel32 -luser32 -lgdi32 -lopengl32 -lglu32 -lwinmm -lm resources.o
    make: *** [sample1] Error 1
    ã“ã®ã‚½ãƒ¼ã‚¹ã ã¨ã©ã“ã§ã‚¨ãƒ©ãƒ¼ãŒã§ã¦ã„ã‚‹ã®ã‹ã‚ã‹ã‚Šã¾ã›ã‚“。
    よã‚ã—ã‘ã‚Œã°æ•™ãˆã¦ã‚‚らãˆã¾ã›ã‚“ã‹ï¼Ÿ
    å˜ç´”ãªã—ã¤ã‚‚ã‚“ã§ã™ã„ã¾ã›ã‚“。

  11. æ‚©ã‚ã‚‹åˆå¿ƒè€… MonsterID Icon æ‚©ã‚ã‚‹åˆå¿ƒè€… on 2008-04-15

    ã§ã‚€ã•ã‚“ã€
    返信ã‚りãŒã¨ã†å¾¡åº§ã„ã¾ã™ã€‚

    sample1-071001.tgzã§ã‚„ã£ã¦ã¿ã¾ã—ãŸãŒã€å‰å›žã¨åŒã˜çµæžœã«ãªã£ã¦ã—ã¾ã—ã¾ã—ãŸã€‚
    $ tar xvzf sample1-071001.tgz
    tar (child): sample1-071001.tgz: Cannot open: No such file or directory
    tar (child): Error is not recoverable: exiting now
    tar: Child returned status 2
    tar: Error exit delayed from previous errors

    ãã“ã§ç¢ºèªã—ãŸã„ã—ãŸã„ã®ã§ã™ãŒã€è¬›åº§ï¼’ã®å†…容ãŒã§ãã¦ã„れã°
    ã“ã®ãƒ—ログラムを実行ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã™ã§ã—ょã†ã‹ï¼Ÿ
    ã‚‚ã—ã‹ã—ãŸã‚‰ä½•ã‹ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—忘れã¦ãªã„ã‹å¿ƒé…ã«ãªã£ã¦ãã¾ã—ãŸã€‚
    ã¾ãŸã“ã®ã‚¨ãƒ©ãƒ¼ã¯ã©ã®ã‚ˆã†ãªæ„味を表ã™ã®ã§ã—ょã†ã‹ï¼Ÿ
    使用環境ã¯ã€MINGW32ã§ã™ã€‚
    ãŸã³ãŸã³å¤‰ãªè³ªå•ã‚’ã—ã¦ã—ã¾ã„ã™ã„ã¾ã›ã‚“。

  12. demu MonsterID Icon demu on 2008-04-14

    åˆå¿ƒè€…ã•ã‚“ã€

    コメントã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚最近ã€ã‚³ãƒ¡ãƒ³ãƒˆãŒãªã‹ã£ãŸã®ã§å¯‚ã—ã‹ã£ãŸã§ã™ã€‚

    ã•ã¦ã€ã”質å•ã§ã™ãŒã€ã‚µãƒ³ãƒ—ルプログラムã®ãƒ•ァイルåã‚’sample1-0701001.tgzã¸å¤‰æ›´ã—ãŸã«ã‚‚ã‹ã‹ã‚らãšã€èª¬æ˜Žã®æ–‡ç« ãŒæ˜”ã®åå‰sample1-070919.tgzã§å‡ºã¦ã„ãŸã®ãŒåŽŸå› ã§ã™ã€‚

    ãŠè©«ã³ã—ã¦è¨‚æ­£ã—ã¾ã™ã€‚ãªãŠã€sample1ã®å¾Œã¯å¹´æœˆæ—¥ã§ã™ã€‚

    ã§ã‚€

  13. åˆå¿ƒè€… MonsterID Icon åˆå¿ƒè€… on 2008-04-13

    MINGWã§Sample1ã‚’ã†ã¾ã実行ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
    make以å‰ã«$ tar xvzf sample1-070919.tgzã§ã‚¨ãƒ©ãƒ¼ãŒã§ã¦ã—ã¾ã„ã¾ã™ã€‚
    $ tar xvzf sample1-070919.tgz
    tar (child): sample1-070919.tgz: Cannot open: No such file or directory
    tar (child): Error is not recoverable: exiting now
    tar: Child returned status 2
    tar: Error exit delayed from previous errors
    ソースã¯ä»¥ä¸Šã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
    ã¾ãŸã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ãŸ0701001.tgzã¨070919.tgzã¯ã€ä½•ã‹é–¢ä¿‚ãŒã‚ã‚‹ã®ã§ã—ょã†ã‹ï¼Ÿ$ tar xvzf sample1-070919.tgzã¨$ tar xvzf sample1-071001.tgzã®ä¸¡æ–¹ã§è©¦ã—ã¾ã—ãŸãŒç„¡ç†ã§ã—ãŸã€‚
    講座2ã®ãƒ‡ãƒ¢ãƒ—ログラムã¯ä¸Šæ‰‹ãã„ãã¾ã—ãŸã€‚
    åˆã‚ã¦é–“ã‚‚ãªã„ã®ã§ã€åˆæ­©çš„ãªãƒŸã‚¹ã‚’ã—ã¦ã„ãŸã‚‰ã™ã„ã¾ã›ã‚“。

  14. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2008-03-14

    ロウã•ã‚“ã€

    返事ãŒé…ããªã‚Šã™ã¿ã¾ã›ã‚“。

    Visual C++ 2008 Expressionã§ODE本ã®ã‚µãƒ³ãƒ—ルプログラムを動ã‹ã™ãŸã‚ã®æ–¹æ³•ã‚’ODEæœ¬ã‚«ãƒ†ã‚´ãƒªã«æ›¸ãã¾ã—ãŸã®ã§å‚考ã«ã—ã¦ãã ã•ã„。

    ã‚ã‹ã‚Šã¥ã‚‰ã„箇所や間é•ã„ãŒã‚れã°ã”指摘ãã ã•ã„。

    ã§ã‚€

  15. ロウ MonsterID Icon ロウ on 2008-03-11

    ã¯ã˜ã‚ã¾ã—ã¦ã€ã§ã‚€ã•ã‚“

    åªä»ŠODEã®æœ¬ã‚’見ãªãŒã‚‰å‹‰å¼·ä¸­ã§ã™ã€‚
    自分ã§ãƒ—ログラムを組ã¿ç«‹ã¦ã¦å®Ÿè¡Œã—ã¦ã¿ãŸã„ã®ã§ã™ãŒã©ã†ã™ã‚Œã°å®Ÿè¡Œã§ãã‚‹ã®ã§ã—ょã†ã‹ã€‚å› ã¿ã«ä»Šè‡ªåˆ†ã¯”Microsoft Visual Studio 2005″ã§ä½œã£ã¦ã„ã¾ã™ã€‚ã—ã‹ã—ヘッダファイルãŒã‚ã‹ã‚‰ãªã„ã®ã§å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ããªã„ã§ã„る状態ã§ã™ã€‚ã‚‚ã—よã‚ã—ã‘れã°ãƒ¡ãƒ¼ãƒ«ã‚’ãã ã•ã„。

    ä¸‹æ‰‹ãªæ–‡ç« ã«ãªã£ã¦ã™ã¿ã¾ã›ã‚“m(_ _)m

  16. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-09-18

    Thomsonã•ã‚“ã€

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

    ã”æŒ‡æ‘˜ã‚’å—ã‘ã‚‹ã¾ã§å…¨ãæ°—ãŒã¤ãã¾ã›ã‚“ã§ã—ãŸã€‚ç¾åœ¨ã€ã“ã®ãƒšãƒ¼ã‚¸ã®ä¸­ã»ã©ã«ã‚ã‚‹Next Pageã¯demura.netã®å…¨è¨˜äº‹(http://demura.net/archives/9ode/)ã®é †ç•ªã«ãªã£ã¦ã„ã¾ã™ã€‚通常ã®ãƒ–ログãªã‚‰ã“ã®è¨­å®šã§è‰¯ã„ã®ã§ã—ょã†ãŒã€ã‚«ãƒ†ã‚´ãƒªåˆ¥ã®è¨˜äº‹ãŒå¤šã„ã®ã§å¤‰æ›´ã—ã¾ã™ã€‚

    ãŸã ã€ODE講座ã«é–¢ã™ã‚‹è¨˜äº‹ã¯ODEカテゴリã®ä¸­ã®ã‚µãƒ–カテゴリã¨ãªã£ã¦ã„ã‚‹ã®ã§ã€ODEカテゴリ内ã®é †ç•ªã«ãªã‚Šã¾ã™ã€‚ã¤ã¾ã‚Šã€Next Pageã«ã¯ODEã«ã¯é–¢ä¿‚ã—ã¾ã™ãŒã€ODE講座ã«é–¢ä¿‚ã—ãªã„記事ãŒãƒªãƒ³ã‚¯ã•れる場åˆãŒã‚りã¾ã™ã€‚ã”了承ãã ã•ã„。

  17. Thomson MonsterID Icon Thomson on 2007-09-18

    ã¯ã˜ã‚ã¾ã—ã¦ã€‚
    Thomsondã§ã™ã€‚
    最近ODEを使用ã—å§‹ã‚ã€å‡ºæ‘先生ã®ãƒ›ãƒ¼ãƒ ãƒ¼ãƒšãƒ¼ã‚¸ã‚’使ã£ã¦è…•を磨ã“ã†ã¨ã—ã¦ã„ã¾ã™ã€‚
    ã¨ã¦ã‚‚ã‚ã‹ã‚Šã‚„ã™ã„ã—ã€å‚考ã«ãªã£ã¦ã„ã¾ã™ã€‚

    コメントãªã®ã§ã™ãŒã€ã“ã®ãƒšãƒ¼ã‚¸ã®ä¸­ç¨‹ã«ã‚ã‚‹Next Pageã®ãƒªãƒ³ã‚¯å…ˆãŒé–“é•ã£ã¦ã„るよã†ãªæ°—ãŒã™ã‚‹ã®ã§ã™ãŒã©ã†ã§ã—ょã†ã‹ï¼Ÿ
    è¡çªå›žé¿ã®ç¯€ã«ã¯å†åº¦ç›®æ¬¡ã«æˆ»ã‚‰ãªã„ã¨è¡Œã‘ãªã„よã†ã«ãªã£ã¦ã„るよã†ã§ã™ã€‚

    ãƒžã‚¤ãƒŠãƒ¼ãªæŒ‡æ‘˜ã‚’ã—ã¦ã—ã¾ã„ã€ã™ã„ã¾ã›ã‚“
    ã“ã®ãƒ›ãƒ¼ãƒ ãƒšãƒ¼ã‚¸ã§å‹‰å¼·ã—ã¦å®ŸåŠ›ã‚’ä»˜ã‘ã¦ã€ç«‹æ´¾ã«ãƒ—ログラムを作れるよã†ã«ãªã‚ŠãŸã„ã¨æ€ã„ã¾ã™ã€‚

  18. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-01-21

    Jimmyã•ã‚“ã€

    よã‹ã£ãŸã§ã™ã­ã€‚ã¾ãŸã€ã‚³ãƒ¡ãƒ³ãƒˆãã ã•ã„。

  19. jimmy MonsterID Icon jimmy on 2007-01-21

    ã§ã‚€ã•ã‚“ã€
    ã§ãã¾ã—ãŸã€‚ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚

  20. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-01-19

    jimmyã•ã‚“ã€

    ç§ã®iMac G5ã§ã¯ä»¥ä¸‹ã®makefileã§ã‚³ãƒ³ãƒ‘イルã§ãã¾ã—ãŸã€‚
    TARGETã‚’armã‹ã‚‰koboshiã«ã—ãŸã ã‘ã§ã™ã€‚
    ã‚‚ã—ã€ä»¥ä¸‹ã®makefileã§ã‚³ãƒ³ãƒ‘イルã§ããªã‹ã£ãŸã‚‰æ•™ãˆã¦ãã ã•ã„。ãªãŠã€ã“ã“ã«ã‚¿ãƒ–ã„ã‚Œã‚‹ã¨æ›¸ã„ãŸã¨ã“ã‚ã«ã‚¿ãƒ–ã‚’ã„れã¦ãã ã•ã„。makefileã®ãŠç´„æŸã§ã™ã€‚

    CC = g++ -I -O2 -Wall -g
    TARGET = koboshi
    OBJS = $(TARGET).o
    SOURCE = $(TARGET).cpp
    HEADER =
    LIBS = -L../../drawstuff/src -L/usr/local/lib -L/usr/X11R6/lib -L/usr/X11R6/lib
    INDS = -I. -I../../include -I/usr/local/include -I/usr/X11R6/include
    OPTS = -lm -lode -ldrawstuff -lX11 -framework OpenGL -framework Carbon -framework AGL

    $(TARGET):$(OBJS) $(HEADER)
    ã“ã“ã«ã‚¿ãƒ–を入れる $(CC) -o $(TARGET) $(OBJS) $(LIBS) $(INDS) $(OPTS)

    $(OBJS):$(SOURCE) $(HEADER)
    ã“ã“ã«ã‚¿ãƒ–を入れる $(CC) -c $(SOURCE) $(LIBS) $(INDS)

    clean:
    ã“ã“ã«ã‚¿ãƒ–を入れる rm $(TARGET) $(OBJS) *.*~ *~

  21. jimmy MonsterID Icon jimmy on 2007-01-17

    ã§ã‚€ã•ã‚“ã€

    ãŠè¿”事ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚
    ODE講座16ã®ã‚µãƒ³ãƒ—ルプログラムã¯ã†ã¾ã実行ã§ãã¾ã—ãŸã€‚
    ã§ã‚‚ã€ãã®makefileを使ã£ã¦ã€€(TARGET = koboshiã«ã—ã¾ã—ãŸ)
    koboshiサンプルプログラムをcompileã™ã‚ã¨ä»¥ä¸‹ã®å•題ãŒã‚ã£ãŸã€‚
    makefile:14: warning: overriding commands for target `koboshi’
    makefile:11: warning: ignoring old commands for target `koboshi’
    make: Circular koboshi <- koboshi dependency dropped.
    g++ -o .cpp
    i686-apple-darwin8-g++-4.0.1: no input files
    make: *** [.cpp] Error 1

  22. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-01-12

    Jimmyã•ã‚“ã€

    é…ããªã‚Šã¾ã—ãŸãŒODE講座16ã«OS X用ã®makefileã‚’å«ã‚“ã ã‚µãƒ³ãƒ—ルプログラムを作りã¾ã—ãŸã®ã§å‚考ã«ã—ã¦ãã ã•ã„。ã“れã¯iMac G5ã§ç¢ºèªã—ãŸã®ã§å•題ã¯ãªã„ã¨æ€ã„ã¾ã™ã€‚makefile.osxã‚’makefileã«ã‚³ãƒ”ーã—ã¦ã‹ã‚‰makeã—ã¦ãã ã•ã„。

    ãŠæ‰‹æ•°ã§ã™ãŒã€ã†ã¾ã実行ã§ããŸã‚‰ã”連絡頂ã‘ãŸã‚‰ã‚りãŒãŸã„ã§ã™ã€‚

  23. jimmy MonsterID Icon jimmy on 2007-01-08

    ã§ã‚€ã•ã‚“ã€
    ãŠè¿”事ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚å•題ã¯ã¾ã è§£æ±ºã•れã¦ã„ãªã„ã§ã™ã€‚
    mv arm.c arm.cpp ã‚’ã—ã¦makeã™ã‚‹ã¨ä»¥ä¸‹ã®ã‚ˆã†ãªerrorãŒã§ã¾ã—ãŸã€‚

    makefile:15: warning: overriding commands for target `arm’
    makefile:12: warning: ignoring old commands for target `arm’
    make: Circular arm <- arm dependency dropped.
    g++ -o .cpp
    i686-apple-darwin8-g++-4.0.1: no input files
    make: *** [.cpp] Error 1

  24. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-01-05

    Jimmyã•ã‚“ã€

    コメントãŒé€”中ã§çµ‚ã‚ã£ã¦ã„ã‚‹ã®ã§ã‚ˆãã‚ã‹ã‚Šã¾ã›ã‚“ãŒã€å•題ã¯è§£æ±ºã•れãŸã®ã§ã—ょã†ã‹ï¼Ÿ

    æ‹¡å¼µå­ãŒ.cã¨.cppã¨æ··åœ¨ã—ã¦ã„ã‚‹ç†ç”±ã¯ã€æœ¬æ¥åˆå¿ƒè€…用ã®è¬›åº§ãªã®ã§c言語ã§ãƒ—ログラムを記述ã—ã¾ã—ãŸãŒã€cygwinã§ã¯ã©ã†ã—ã¦ã‚‚gccã§ã¯ã‚³ãƒ³ãƒ‘イルã§ããšã€g++を使ã£ã¦ã„ã¾ã—ãŸã€‚

    ã¾ãŸã€c言語もc99ã«ã‚ˆã‚‹æ–°ã—ã„æ›¸å¼ã‚’多ã使ã£ã¦ã„ã‚‹ãŸã‚gccã®ãƒ‡ãƒ•ォルトã®ã‚ªãƒ—ションã§ã¯ã‚³ãƒ³ãƒ‘イルã§ããªã„サンプルプログラムを多ã„ã®ã§ã™ã€‚

    ã•らã«ã€Visual C++ã®åˆ©ç”¨è€…ã‹ã‚‰æ‹¡å¼µå­ãŒ.cã§ã¯ã‚¨ãƒ©ãƒ¼ã«ãªã‚‹ã®ã§.cppã«ã—ã¦æ¬²ã—ã„ã¨ã„ã†ä¾é ¼ã‚‚ã‚りã€ã“れã‹ã‚‰ä½œæˆã™ã‚‹ã‚µãƒ³ãƒ—ルプログラムã¯å…¨ã¦.cppã«ã—よã†ã¨è€ƒãˆã¦ã„ã¾ã™ã€‚

  25. jimmy MonsterID Icon jimmy on 2007-01-04

    ã§ã‚€ã•ã‚“ã€
    ãŠè¿”事ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚
    プログランムをdownloadã—ãŸã‚‰mvã§æ‹¡å¼µå­ã¯ .c ã‹ã‚‰ .cpp ã«å¤‰æ›´ã—ã¾ã—ãŸã€‚

  26. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2007-01-02

    Jimmyã•ã‚“

    ã‚ã‘ã¾ã—ã¦ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ã€‚今年もdemura.netをよã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

    外ã—ã¦ã„ã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“ãŒã€ã“ã®makefileã¯C++用ã®ã‚³ãƒ³ãƒ‘イラg++を使ã£ã¦ã„ã¾ã™ã€‚ã¾ãŸã€æ‹¡å¼µå­ãŒ.cppã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。拡張å­ãŒ.cã¨ã„ã†ã“ã¨ã¯ã‚りã¾ã›ã‚“ã‹ï¼Ÿ

  27. jimmy MonsterID Icon jimmy on 2007-01-02

    ã§ã‚€ã•ã‚“ã€

    ã‚ã‘ã¾ã—ã¦ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ã€‚今年もよã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

    ã•ã¦ã€makefileã®ä»¶ã§ã™ãŒã„ã‚ã„ã‚ãªsampleを試ã—ã¦ã¿ã¾ã—ãŸã€‚
    普通å•題ã¯ãªã„ã§ã™ãŒã€ã¨ãã©ã以下ã®ã‚ˆã†ãªmessageãŒã§ã¾ã—ãŸã€‚
    ãれã«å¯¾ã—ã¦ã©ã†ã—ãŸã»ã†ãŒã„ã„ã§ã—ょã†ã‹ï¼Ÿ

    makefile:15: warning: overriding commands for target `koboshi’
    makefile:12: warning: ignoring old commands for target `koboshi’
    make: Circular koboshi <- koboshi dependency dropped.
    g++ -o .cpp
    i686-apple-darwin8-g++-4.0.1: no input files
    make: *** [.cpp] Error 1

    makefile:15: warning: overriding commands for target `arm2′
    makefile:12: warning: ignoring old commands for target `arm2′
    make: Circular arm2 <- arm2 dependency dropped.
    g++ -o .cpp
    i686-apple-darwin8-g++-4.0.1: no input files
    make: *** [.cpp] Error 1

    makefile:15: warning: overriding commands for target `arm2IK’
    makefile:12: warning: ignoring old commands for target `arm2IK’
    make: Circular arm2IK <- arm2IK dependency dropped.
    g++ -o .cpp
    i686-apple-darwin8-g++-4.0.1: no input files
    make: *** [.cpp] Error 1

  28. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2006-12-31

    Jimmyã•ã‚“ã€

    ã™ã¿ã¾ã›ã‚“。大掃除や年賀状書ãã«è¿½ã‚れã¦è¿”事ãŒé…れã¾ã—ãŸã€‚大掃除ã¯å¤§å¤‰ã§ã™ãŒã€çµ‚ã‚ã£ãŸå¾Œã¯ã™ãŒã™ãŒã—ã„æ°—分ãŒã—ã¾ã™ã€‚

    ã•ã¦ã€makefileをカットアンドペーストã—ãŸã®ã§ã€TabãŒæŠœã‘ã¦ã„ã¾ã—ãŸã€‚
    以下ã®makefileã§ã€Œã“ã“ã«Tabを入れるã€ã¨æ›¸ã‹ã‚Œã¦ã„ã‚‹ã¨ã“ã‚ã«Tabキーを押ã—ã¦Tabを入れã¦ãã ã•ã„。

    # OS X用ã®makefile
    CC = g++ -I -O2 -Wall -g
    TARGET = sample4a
    OBJS = $(TARGET).o
    SOURCE = $(TARGET).cpp
    HEADER =
    LIBS = -L../../drawstuff/src -L../../ode/src -L/usr/local/lib -L/usr/X11R6/lib -L/usr/X11R6/lib
    INDS = -I. -I../../include -I/usr/local/include -I/usr/X11R6/include
    OPTS = -lm -lode -ldrawstuff -lX11 -framework OpenGL -framework Carbon -framework AGL

    $(TARGET):$(OBJS) $(HEADER)
    「ã“ã“ã«Tabを入れる〠 $(CC) -o $(TARGET) $(OBJS) $(LIBS) $(INDS) $(OPTS)

    $(OBJS):$(SOURCE) $(HEADER)
    「ã“ã“ã«Tabを入れる〠 $(CC) -c $(SOURCE) $(LIBS) $(INDS)

    clean:
    「ã“ã“ã«Tabを入れるã€ã€€rm $(TARGET) $(OBJS) *.*~ *~

  29. jimmy MonsterID Icon jimmy on 2006-12-28

    ã§ã‚€ã•ã‚“ã€

    ãŠè¿”事ã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚

    makefile:11: ** missing separator. Stop. ã§ã¾ã—ãŸã€‚

    line 11 ã¯ï¼šã€€$(CC) -o $(TARGET) $(OBJS) $(LIBS) $(INDS) $(OPTS) ã§ã™ã€‚

  30. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2006-12-28

    jimmyã•ã‚“ã€

    intelMacã„ã„ã§ã™ã­ã€‚ç§ã‚‚欲ã—ã„ã®ã§ã™ãŒè²·ãˆã¾ã›ã‚“…

    ã•ã¦ã€makefileãŒMac用ã®ã‚‚ã®ã§ã¯ã‚りã¾ã›ã‚“。以下ã®makefileã‚’å‚考ã«ã•れã¦ã¯ã„ã‹ãŒã§ã™ã‹ï¼Ÿç§ã¯ãŸã‚ã›ãªã„ã®ã§ã€çµæžœã‚’æ•™ãˆã¦ãã ã•ã„ã­ã€‚

    CC = g++ -I -O2 -Wall -g
    TARGET = sample4a
    OBJS = $(TARGET).o
    SOURCE = $(TARGET).cpp
    HEADER =
    LIBS = -L../../drawstuff/src -L../../ode/src -L/usr/local/lib -L/usr/X11R6/lib -L/usr/X11R6/lib
    INDS = -I. -I../../include -I/usr/local/include -I/usr/X11R6/include
    OPTS = -lm -lode -ldrawstuff -lX11 -framework OpenGL -framework Carbon -framework AGL

    $(TARGET):$(OBJS) $(HEADER)
    $(CC) -o $(TARGET) $(OBJS) $(LIBS) $(INDS) $(OPTS)

    $(OBJS):$(SOURCE) $(HEADER)
    $(CC) -c $(SOURCE) $(LIBS) $(INDS)

    clean:
    rm $(TARGET) $(OBJS) *.*~ *~

  31. jimmy MonsterID Icon jimmy on 2006-12-28

    ã§ã‚€ã•ã‚“ã€

    samplesã©ã†ã‚‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚

    IntelMacã§ã¯ãªã‹ãªã‹ã†ã¾ãcompileã™ã‚‹ã®ãŒã§ããªã„ã§ã™ã€‚
    makeã™ã‚‹ã¨ä»¥ä¸‹ã®errorãŒã§ã¾ã—ãŸï¼š

    gcc -Wall -g -DdDOUBLE -c sample4a.cpp -L../../drawstuff/src -L../../ode/src -L/usr/X11R6/lib -L/usr/local/lib -L/usr/lib/w32api/lib -I. -I../../include -I/usr/X11R6/include -I/usr/include
    In file included from ../../include/ode/ode.h:28,
    from sample4a.cpp:6:
    ../../include/ode/config.h:264:1: warning: “dDOUBLE” redefined
    :1:1: warning: this is the location of the previous definition
    gcc -Wall -g -DdDOUBLE -o sample4a sample4a.o -L../../drawstuff/src -L../../ode/src -L/usr/X11R6/lib -L/usr/local/lib -L/usr/lib/w32api/lib -I. -I../../include -I/usr/X11R6/include -I/usr/include -lm -lode -ldrawstuff -lGL -lGLU
    /usr/bin/ld: warning -L: directory name (/usr/lib/w32api/lib) does not exist
    /usr/bin/ld: Undefined symbols:

    ã©ã†ã™ã‚Œã°ã„ã„ã§ã—ょã‹ï¼Ÿç§ã®makefileã¯ã“れã§ã™ï¼š

    # make file

    CC = gcc -Wall -g -DdDOUBLE
    TARGET = sample4a
    OBJS = sample4a.o
    HEADER =
    LIBS = -L../../drawstuff/src -L../../ode/src -L/usr/X11R6/lib -L/usr/local/lib -L
    /usr/lib/w32api/lib
    INDS = -I. -I../../include -I/usr/X11R6/include -I/usr/include
    OPTS = -lm -lode -ldrawstuff -lGL -lGLU

    $(TARGET):$(OBJS) $(HEADER)
    $(CC) -o $(TARGET) $(OBJS) $(LIBS) $(INDS) $(OPTS)

    sample4a.o:sample4a.cpp $(HEADER)
    $(CC) -c sample4a.cpp $(LIBS) $(INDS)

    clean:
    rm $(TARGET) $(OBJS) *.*~ *~

    よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

  32. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2006-10-26

    ODEåˆå¿ƒè€…ã•ã‚“

    コメントã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚

    インストールを説明ã—ãŸODE講座2ã§ä¸€éƒ¨ä½œæ¥­å¿˜ã‚ŒãŒã‚りã¾ã—ãŸã€‚ã™ã¿ã¾ã›ã‚“。今ã¯è¨‚正済ã¿ã§ã™ã€‚
    http://demura.net/archives/2006/09/ode2.html

    以下ã®ä½œæ¥­ã‚’ã—ã¦ãã ã•ã„。
    mingwターミナルを開ã以下ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¦ãã ã•ã„。odeã®ãƒ©ã‚¤ãƒ–ラリを所定ã®ä½ç½®ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã™ã‚‹ä½œæ¥­ã§ã™ã€‚

    $ cd /home/ユーザå/src/ode-0.7
    $ make install

    ã¾ãŸã¯ã€makefileã®ä»¥ä¸‹ã®è¡Œ

    LIBS = -L../../drawstuff/src -L/usr/X11R6/lib -L/usr/local/lib -L/usr/lib/w32api/lib

    を次ã®ã‚ˆã†ã«å¤‰æ›´ã—ã¦ãã ã•ã„。

    LIBS = -L../../drawstuff/src -L../../ode/src -L/usr/X11R6/lib -L/usr/local/lib -L/usr/lib/w32api/lib

    ã¤ã¾ã‚Šã€ãƒªãƒ³ã‚¯ã™ã‚‹ãƒ‘スã«../../ode/srcã‚’å«ã‚ã‚‹ã®ã§ã™ã€‚ã“ã†ã™ã‚‹ã¨make installã™ã‚‹å¿…è¦ã¯ã‚りã¾ã›ã‚“。

  33. ODEåˆå¿ƒè€… MonsterID Icon ODEåˆå¿ƒè€… on 2006-10-25

    MINGWã§Sample1ã‚’ã†ã¾ã実行ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚解決案を教ãˆã¦ã„ãŸã ã‘ãªã„ã§ã—ょã†ã‹ã€‚よã‚ã—ããŠé¡˜ã„ã„ãŸã—ã¾ã™ã€‚

    $ make

    c:\mingw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot find -lode
    collect2: ld returned 1 exit status
    make: *** [sample1] Error 1

  34. ã§ã‚€ MonsterID Icon ã§ã‚€ on 2006-10-02

    mashuã•ã‚“

    testプログラムã§ã‚‚åŒæ§˜ãªã‚¨ãƒ©ãƒ¼ãŒã§ã‚‹ã¨ã„ã†ã“ã¨ã¯ï¼Œã“ã®ãƒšãƒ¼ã‚¸ã®ãƒ—ログラムã®å•題ã§ã¯ãªã„ã¨æ€ã„ã¾ã™ï¼Ž

    make cleanを実行ã—ã¦ï¼Œã‚‚ã†ã„ã¡ã©ODE0.7ã‚’configureã‹ã‚‰ã‚„り直ã—,makeã—ã¦ã¯ã„ã‹ãŒã§ã—ょã†ã‹ï¼Ÿç§ã®çµŒé¨“ã§ã¯ï¼Œã“ã®ã‚¨ãƒ©ãƒ¼ãŒã§ãŸã¨ãã¯ä»–ã®ãƒ‘ソコンã‹ã‚‰ãƒã‚¤ãƒŠãƒªã‚’コピーã—ãŸã¨ãã§ã—ãŸï¼Ž

    確èªã—ã¾ã™ãŒï¼ŒODE0.7ã‚’mingwã§ã‚³ãƒ³ãƒ‘イル,実行ã—ã¦ã„ã¾ã™ã­ï¼Ÿ

  35. mashu MonsterID Icon mashu on 2006-10-02

    ãŸã³ãŸã³ã™ã„ã¾ã›ã‚“。
    ã“ã¡ã‚‰ã®ãƒšãƒ¼ã‚¸ã®ãƒ•ァイルをインストールã—ã¦å®Ÿè¡Œã—ã¦ã¿ã¾ã—ãŸãŒï¼Œã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
    実行ã™ã‚‹ã¨ã€Œcould not load acceleratodã€ã¨è­¦å‘ŠãŒè¡¨ç¤ºã•れã¦ã—ã¾ã„ã¾ã™ï¼Ž
    原因ã«ã¤ã„ã¦å¿ƒå½“ãŸã‚ŠãŒã‚れã°ï¼Œãƒ¬ã‚¹ãƒãƒ³ã‚¹ã®æ–¹ãŠé¡˜ã„ã—ã¾ã™ï¼Ž

    testプログラムã«åŒæ§˜ã®çµæžœã«ãªã£ã¦ã„ã‚‹ã‚‚ã®ãŒã‚りã¾ã—ãŸï¼Žï¼ˆtest_basket.exe, test_plane2d.exe)

コメントをã©ã†ãž

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

3,374 views  (Since 2010-08-11)