2009-12-01ãã1ã¶æéã®è¨äºä¸è¦§
è¡åãã¬ããã®å¤§ããã足ããªãã¦ãï¼ï¼ï¼ãè¶ãããã¼ã³ããã¤pmdã¢ãã«ã vertex shaderã§skinningããã®ã¯é£ããããã ã ç¡çãªãã¿ã¼ã³ attribute vec4 my_Vertex; attribute vec4 my_Uv; //attribute mat4 my_BoneMatrix[256]; // ééã // 確ä¿ã§ãâ¦
glslã§ã¹ããã³ã°ãããµã³ãã« http://www.codesampler.com/oglsrc/oglsrc_11.htm#ogl_skinning
webrickãããã·ã«ä¹ããããã®è©¦ä½httpã¯ã©ã¤ã¢ã³ãã åã«Net::BufferedIO(å é¨ç¨ã¨æ¸ãã¦ããã®ãåæã«ä½¿ã£ã¦ãã)ãæµç¨ãã¦ããé¨åãã©ãã«ã使ãåæããããããªãã®ã§èªä½ãããã¨ã«ããã TCPSocketã使ãã°æ¥½ã¡ãã ä¸æã«å ¨ãã¼ã¿ãreadããªãâ¦
å¤æè¡åã®ä½ãæ¹ãééã£ã¦ããã¨ãããããããä¿®æ£ã çµå±ã http://r13n.spaces.live.com/ ã®ãã¼ã«ãããã¼ãºè¡¨ç¤ºã ãã®ãããã ãªé¨åãæ½åºãã¦ãªãã»ããè¡åãå¤æè¡åããã³ãã ã§ãèªä½ã®ã³ã¼ãã¨é£ãéãã¨ããã追跡ãããã¨ã§åæ¾ããã é·ãâ¦
ãã使ããã¨æã£ãããããããåãããªãã£ãã®ã§ã¡ã¢ã #include <string> #include <iostream> int main() { std::string hello="hello world!"; for(std::string::reverse_iterator rit=hello.rbegin(); rit!=hello.rend(); ++rit){ std::cout << *rit << std::endl; } }</iostream></string>
http://hexadrive.sblo.jp/archives/20090406-1.html æé©åã®ãããããã ã©ã£ã¡ãååªå ã§è¡åªå ãªã®ãã©ããæ··ä¹±ãããªã»ã»ã»ããã« http://hexadrive.sblo.jp/archives/20080404-1.htmlé åã§è¡åã表ç¾ããã¨ãã®æ¹åãååªå ãè¡åªå ãã¨ãããã¨ã§ãâ¦
http://r13n.spaces.live.com/ OpenGLã§bulletã®ç©çæ¼ç®ãçµã¿è¾¼ãã§ããã ãã£ãã試ãã¦ã¿ããã ãã illegal instruction ãåºã¦ãã¾ã£ããsseä¹ã£ã¦ãªãã¨bulletããã¡ãããã»ã»ã»orz bulletã§sseãªãã«ããæ¹æ³ãæ¢ããLinuxã§åãããã©ã£ã¡ãã ãªã
æ¨æ¥1æ¥ã¯PyQT4ã®GUI解èªã«è²»ããããä»æ¥ã¯æ¬ä¸¸ã®VMD->BVHå¤æé¨åã解èªä¸ãprintãããã°ãé§ä½¿ããªããèªãã§ã¿ãã¨ããé¢æ°éã®å¼ã³åºãé¢ä¿ã¯ã ãããããã£ãã äºåã«ã http://clogging.blog57.fc2.com/ http://sites.google.com/a/render.jp/vmdimâ¦
VMDå®é¨åæºåã¨ãã¦ãã¼ãã¬ã¼ã è£å®ã®å®è£ ã¨ç¢ºèªã åç´ã«vmdãèªã¿è¾¼ãã§ã横軸ã«æéã縦軸ã«åãã£ã³ãã«(ä½ç½®x, y, zã¨Quaternion(x, y, z, w)ã®7ãã£ã³ãã«)ã®å¤ããããããã¦ã¿ãã ãã¼ã¿éãå¤ãã®ã§è¦ããããã«ãã¦ãããªãã¨printãããã°ã§ã¯â¦
MIKOTOå¼ã®MQOãBVHã¢ã¼ã·ã§ã³ã§åããå®é¨ã¯ä¸æãããã¨ã«ããã ã¢ãã«ã¨ã¢ã¼ã·ã§ã³ã§åç §ãããã¼ã³ãä¸è´ãã¦ããªãå ´åã®ã¹ããã³ã°ã¯ãã¹ããã³ã°ä»¥å¤ã®ã¨ããã§é£æ度ãé«ããã¨ãå¤æã å½åè¦åã«ããå³å·¦ã®èªåå±éã ã¨ãã大ãããéãã¨ããè©â¦
å¾ãã«tupleä½ãã®ãããã©ãããã£ãã®ã ããæ±ãã¦ããã®ã«è¿ãæ¹æ³ãçºè¦ã http://python.matrix.jp/tips/container/dict.html#id8 name='hoge' print 'hello %(name)s' % vars() # "hello hoge" vars()ã¯ç¥ããªãã£ãã è¦ãã¦ãããã ã¤ãã§ã«è©¦ãã¦â¦
ã¹ããã³ã°ã®é½åä¸glRotatefãglTranslatefã使ããã«å¤æãå®è£ ããå¿ è¦ãããã®ã§ä¸æºåã«ããããglMultMatrixfã§ç½®ãæãããã¹ãã³ã¼ããæ¸ãã¦ã¿ãã ããã«OpenGL3ã«æºæ ãããã¨æãã¨glMultMatrixfããdeprecatedãªã®ã§è¨ç®ããè¡åãvertex shadeâ¦
ã¤ãã§ãªã®ã§å¤åã«ããããã ã£ãMIKOTOæ¹å¼ããããããã¨ã«ã ä»åã®ç®çã«ãã£ããããç´ ä½ããã¡ãããããã ãã¦ãã¾ããã http://witchcraft-jp.sakura.ne.jp/mm/contents/mikoto_tips4.html å¼ãç¶ãã 1. åé ç¹ã®ã¦ã§ã¤ããè¨ç®ãã(Mikotoæ¹å¼ã®â¦
BVHã®æ å ±ãåéãã¦ãããããè¬åº§ãçºè¦ã http://www.cg.ces.kyutech.ac.jp/lecture/cg2/ BVHãã¥ã¼ã¯ãã½ã¼ã¹ä»ãã§ããã®ã§ããã足ãããã«ã¹ããã³ã°ã®ç解ãé²ãããã¨ãã§ãããã ãã¨ãããã 1. ãã¼ã³ã®ãã¼ãã¬ã¼ã ã¢ãã¡ã¼ã·ã§ã³(BVH ãªã¤ã©ã¼â¦
$ cmake -DCMAKE_INSTALL_PREFIX=$HOME/local . ã¨ããã
ã½ã¼ã¹ã³ã¼ãä»ãã®èª¬æãçºè¦ã http://norsetto.890m.com/sky.phpãã¨ã§èªãã ã¡ãªã¿ã«drawstuffã®å°é¢ã¨ç©ºã¯åãªã大ããªåè§ããªã´ã³ã ã£ãwã C++åããªããglutã«ä¹ãã¦ã¿ãã skydomeã®ä¸ã«shaderã§æç»ãã¦ããã shaderãããããèªãã
glutã§å®è£ ãã¦ã¿ãã drawstuffãç¡ãã¨ãªãã¨ãå³æ°ãªãç»é¢ã«ã ããã¯ãä»ã«ããã¦ã¹æä½ã¨ããã¯ã¹ãã£è²¼ã£ããã¨æå¤ã¨æ©è½ããããªã z-upãæ¢ãã¦y-upã«å¤æ´ã ç¶æ æ´æ°ã¯ãã¿ã¤ãã¼ã§å®æçã«å¼ã¶ããã«ãã¦ã¿ã(ã¡ããã¨FPSãç¶æããããã«ã¯ãã¦â¦
ç°¡å!å®è·µ!ããããã·ãã¥ã¬ã¼ã·ã§ã³ - Open Dynamics Engineã«ããããããããã°ã©ãã³ã° ãèªæ¸ä¸ã ï¼åç®ã®ããã°ã©ã ãåå¤ã«æéåã£ã(ç°å¢æ´åçãªæå³ã§)ãèªç±è½ä¸ã #include <ode/ode.h> #include <drawstuff/drawstuff.h> dWorldID g_world; #define STEP 0.01 dBodyID g_apple; </drawstuff/drawstuff.h></ode/ode.h>â¦
ç°¡å!å®è·µ!ããããã·ãã¥ã¬ã¼ã·ã§ã³ - Open Dynamics Engineã«ããããããããã°ã©ãã³ã°ä½è : åºæå ¬æåºç社/ã¡ã¼ã«ã¼: 森ååºççºå£²æ¥: 2007/05/18ã¡ãã£ã¢: åè¡æ¬ï¼ã½ããã«ãã¼ï¼è³¼å ¥: 5人 ã¯ãªãã¯: 89åãã®ååãå«ãããã° (10件) ãè¦ãæè¿ãâ¦
ããã®ã¨ãã調åã®æªãã£ãGentooãã¤ãã«åèµ·ä¸è½ã«ãã¡ãã£ã¦ãã¾ã£ãã emerge -uD worldãããããåé¡ããã£ã¦å®äºãã¦ããªãã£ãã®ãã¾ããã£ããããã ~x86ã®åªãã ã 幸ãKnoppixã§èµ·åãã¦ã¿ãããã£ã¹ã¯ã¯ç¡äºã ã£ãããã·ã¹ãã ã®åæ§ç¯ã¯æ¢ãâ¦
IKã®èªã¿è¾¼ã¿ã¾ã§å®äºã 足ãã¡ããã¨åãããã«ãªã£ããã¾ã ã¾ã ä¸å®å ¨ã ãã¨ãããã http://github.com/ousttrue/blender-mmd-importer (2.49bãããªãã¨åããªã) ãã¨ã¯ãã¯ã¹ãã£ã®ã¢ã«ãã¡ãã£ã³ãã«å¯¾å¿ã¨è¡¨æ ã®èªã¿è¾¼ã¿ãããã°å®äºã
éãªã£ã骨ãè¦ã«ããã®ã§å «è§å½¢ãã¼ã³ã«ãã¦ã¿ãã ããã«å¤ãªå¦çããã¦éª¨ã®è¦ªåé¢ä¿ãããããã£ãã¨ãããæ´çããã PMDã¯ç´ ç´ãªãã¼ã¿æ§é ãªã®ã§ä½è¨ãªãã¨ãããã«ã¾ã£ã¨ãã«çµã¿ç«ã¦ãã°OKã å «è§å½¢ã«ããã¤ãã§ã«ãOpenGLã®SELECT_MODEã§éª¨ãé¸æã§â¦
pythonã³ã¼ãã®ã¤ã³ãã³ãã2ãã4ã«å¤ãããããªãã¨ããã£ã¦ã¿ãã $ find . -name "*.py" | xargs ruby -pe '$_.sub!(/^( )+/){|m| m*2}' -e:1:in `sub!': invalid byte sequence in UTF-8 (ArgumentError) 対象ã®ãã¡ã¤ã«ã«utf-8ã®ãã®ã¨cp932ã«ãã®ãæ··â¦
http://oldriver.org/python/pep-0008j.html ã¹ãã¼ã¹ã§4vimã®è¨å®ãã¹ãã¼ã¹2ã§ä½¿ã£ã¦ããã®ã§æ¾ç½®ãã¦ãããã人æ§ã®ã³ã¼ããåãè²¼ãããã¨ãã«é常ã«ä¸ä¾¿ãªã®ã§æãæ¹ãããã¨ã«ãããpythonã ãã¹ãã¼ã¹4ã«è¨å®ããã ã¨ããããæ å ±åéã http://d.haâ¦
ä»ä½ã£ã¦ãããã¼ã«ã«æ¬¡ã®ãããªã³ã¼ããããã®ã ãããªãé ãã # RGBé åã¨Alphaé åãåæãã¦RGBAã«ããã³ã¼ã image=wx.Image(path) w=image.GetWidth() h=image.GetHeight() # RGB rgb=image.GetData() # Alphaãã£ã³ãã« alpha=image.GetAlphaData() â¦
ASCIIã®æã®ããã§åãã³ã¼ããã¤ã³ã(0x5c)ã§ãã©ã³ãã«ãã£ã¦æåãéãã®ã ã¨æã£ã¦ããããããèããã¨UNICODEãªã®ã§å¥ã®ã³ã¼ããå½ãã£ã¦ããã®ã§ãã£ãã UTF-8ã§ã¯ \ã¯0x5C㧠¥(åè§)ã¯0xC2A5 ã¨ãªãã æ¥æ¬èªã§ã¯UTF-8ã ã¨asciiã®ï¼ãã¤ãé åã¨ãâ¦
ãã¤ãã®èªå主義ãçºåãã¦å¤åã«æ¸ãã¦ããMikotoã¢ã¼ã·ã§ã³ãã¥ã¼ã¯(é æ«ä¸)ã¿ãããªã®ãã¾ãä½ãå§ããã ä»åº¦ã¯ãpmd/vmdå½¢å¼ã対象ã§wxPython(wx.GLCanvas)ã§æ¸ãã¦ãããwxAUIã使ããã°ä½ã§ãããã£ãããOpenGLã®ã³ã¼ãæ®éª¸ããã£ã¹ã¯ã«æ®ã£ã¦ããâ¦
ã¨ããããprint debugãç°¡åã«ã§ããããã« def p(*args): for arg in args: MQSystem.println(str(arg)) p(MQSystem.getDocument()) ã¡ã¿ã»ã³ã¤ã¢ã®pythonç¨ã«ã¢ã¸ã¥ã¼ã«ã追å ãã Metaseq.exeã¨åããã£ã¬ã¯ããªã« import sys p(sys.path) ã«åºã¦ãããâ¦
ã¡ã¿ã»ã³ã¤ã¢ã®ã¹ã¯ãªããã¯ç´ ã®ç¶æ ã ã¨ã¨ã©ã¼æ å ±ãä¸é¨ãã表示ãããªãã ä¾ãã° def p(*args): """ ããªã³ãé¢æ° è¤æ°ã®å¼æ°ã渡ããã """ if len(args)==0: # æ¹è¡ããã MQSystem.println("") return for arg in args: MQSystem.println(str(arg)) dâ¦
é常ã¢ã¼ãã§ã¯UVãããã³ã°ããåæ ããªãã è¨å®ãä»ã®ãã®ã§ã3Dãã¥ã¼ã¯UVãããã³ã°ç¶æ wã ãããããã·ãªGLSLãã¥ã¼ãªã®ã ããããã¯ããã§å¹³è¡æå½±ã®æ影軸ãXY以å¤ã«å¤ãã¦ãåæ ãããªãç½ ã XZã«æå®ãã¦ãã£ã©ã¢ããªã³ã°ã®ãã³ãã¬ã¼ãã«ä½¿ããâ¦