{"id":1540,"date":"2009-06-08T17:41:11","date_gmt":"2009-06-08T08:41:11","guid":{"rendered":"http:\/\/r-dimension.xsrv.jp\/classes_j\/?p=1540"},"modified":"2015-10-06T02:04:39","modified_gmt":"2015-10-05T17:04:39","slug":"5_interactive3d","status":"publish","type":"post","link":"https:\/\/r-dimension.xsrv.jp\/classes_j\/5_interactive3d\/","title":{"rendered":"5. \u30e9\u30a4\u30c8\uff08processing 3D\u5165\u9580\uff09"},"content":{"rendered":"<p>\u3053\u306e\u30da\u30fc\u30b8\u3067\u306f\u3001processing\u4e0a\u3067\u306e\u30e9\u30a4\u30c8\u306e\u4f7f\u7528\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u307e\u3059\u3002<br \/>\n\u30e9\u30a4\u30c8\u3068\u8a00\u3063\u3066\u3082\u3001\u74b0\u5883\u5149\u3001\u6307\u5411\u6027\u30e9\u30a4\u30c8\u3001\u93e1\u9762\u53cd\u5c04\u5149\uff08\u30cf\u30a4\u30e9\u30a4\u30c8\uff09\u306a\u3069\u3001\u69d8\u3005\u306a\u8981\u7d20\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u307e\u305a\u306f\u3001\u4e00\u756a\u57fa\u672c\u7684\u306a\u30e9\u30a4\u30c8\u3067\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_32_AM-284x300.png\" alt=\"10_6_15__1_32_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4370\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_32_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_32_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<p>\u3053\u306e\u30e9\u30a4\u30c8\u306f\u3001\u5168\u3066\u306e\u30e9\u30a4\u30c8\u3084\u8a2d\u5b9a\u5024\u304c\u30bb\u30c3\u30c8\u306b\u306a\u3063\u3066\u3044\u308b\u3082\u306e\u3067\u3059\u3002<br \/>\n\u8a73\u7d30\u306f\u4ee5\u4e0b\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n<a href=\"http:\/\/www.technotype.net\/processing\/reference\/lights_.html\">lights()<\/a><\/p>\n<p><!--more--><\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle;    \/\/\u89d2\u5ea6\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u5909\u6570\r\n \r\nvoid setup(){\r\n  size(400, 400, P3D);\r\n  noStroke();\r\n  angle = 0;    \/\/60\u5ea6\u3092\u8a2d\u5b9a\r\n}\r\n \r\nvoid draw(){\r\n  background(0);\r\n  lights();\r\n\r\n  translate(width\/2, height\/2);    \/\/\u7acb\u4f53\u306e\u4e2d\u5fc3\u3092\u753b\u9762\u4e2d\u592e\u306b\u79fb\u52d5 \r\n  rotateX(radians(-30));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  rotateY(radians(angle));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  box(150, 150, 150);    \/\/150 x 150 x 150px\u306e\u7acb\u65b9\u4f53\u3092\u63cf\u304f\r\n  \r\n  angle += 0.5;    \/\/\u89d2\u5ea6\u30920.5\u305a\u3064\u8db3\u3057\u3066\u3044\u304f\r\n  if(angle > 360.0) angle = 0.0;    \/\/360\u5ea6\u3092\u8d85\u3048\u305f\u30890\u306b\u623b\u3059\r\n}\r\n<\/pre>\n<p>\u3053\u308c\u3067\u3001\u9670\u5f71\u304c\u4ed8\u3044\u305f\u3053\u3068\u304c\u78ba\u8a8d\u3067\u304d\u305f\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<h2>\u74b0\u5883\u5149<\/h2>\n<p>\u6b21\u306b\u74b0\u5883\u5149\uff08ambient light\uff09\u3092\u518d\u73fe\u3057\u3066\u307f\u307e\u3059\u3002\u74b0\u5883\u5149\u306f\u65b9\u5411\u6027\u3092\u6301\u305f\u306a\u3044\u5149\u3067\u3059\u3002\u5168\u4f53\u3092\u307e\u3093\u3079\u3093\u306a\u304f\u7167\u3089\u3057\u3066\u3044\u308b\u306e\u3067\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u9670\u5f71\u306f\u4ed8\u304d\u307e\u305b\u3093\u3002 ambientLight(red, green, blue)\u3068\u306a\u308a\u307e\u3059\u3002 <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_33_AM-284x300.png\" alt=\"10_6_15__1_33_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4375\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_33_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_33_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle;    \/\/\u89d2\u5ea6\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u5909\u6570\r\n \r\nvoid setup(){\r\n  size(400, 400, P3D);\r\n  noStroke();\r\n  angle = 0;    \/\/60\u5ea6\u3092\u8a2d\u5b9a\r\n}\r\n \r\nvoid draw(){\r\n  background(0);\r\n  \r\n  ambientLight(127, 0, 0);  \/\/\u8d64\u306e\u74b0\u5883\u5149\r\n\r\n  translate(width\/2, height\/2);    \/\/\u7acb\u4f53\u306e\u4e2d\u5fc3\u3092\u753b\u9762\u4e2d\u592e\u306b\u79fb\u52d5 \r\n  rotateX(radians(-30));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  rotateY(radians(angle));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  box(150, 150, 150);    \/\/150 x 150 x 150px\u306e\u7acb\u65b9\u4f53\u3092\u63cf\u304f\r\n  \r\n  angle += 0.5;    \/\/\u89d2\u5ea6\u30920.5\u305a\u3064\u8db3\u3057\u3066\u3044\u304f\r\n  if(angle > 360.0) angle = 0.0;    \/\/360\u5ea6\u3092\u8d85\u3048\u305f\u30890\u306b\u623b\u3059\r\n}\r\n<\/pre>\n<h2>\u6307\u5411\u6027\u30e9\u30a4\u30c8<\/h2>\n<p>\u6b21\u306f\u3001\u5149\u306e\u65b9\u5411\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308bdirectional light\u306e\u4f7f\u3044\u65b9\u3067\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_31_AM-284x300.png\" alt=\"10_6_15__1_31_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4371\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_31_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_31_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<p>directionalLight(red, green, blue, nx, ny, nz)\u306e\u3001nx, ny, nz\u306f\u3001\u5149\u6e90\u306e\u4f4d\u7f6e\u3092\u6307\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n\u4e0b\u56f3\u306e\u30b5\u30f3\u30d7\u30eb\u306e\u5834\u5408\u3001nz\u304c-1\u306a\u306e\u3067\u3001z\u8ef8\u65b9\u5411\u306e\u5965\u306b\u5411\u304b\u3063\u3066\u3044\u308b\u5149\u3068\u3044\u3046\u6307\u5b9a\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle;    \/\/\u89d2\u5ea6\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306e\u5909\u6570\r\n \r\nvoid setup(){\r\n  size(400, 400, P3D);\r\n  noStroke();\r\n  angle = 0;    \/\/60\u5ea6\u3092\u8a2d\u5b9a\r\n}\r\n \r\nvoid draw(){\r\n  background(0);\r\n\r\n  ambientLight(10, 10, 10);  \/\/\u8d64\u306e\u74b0\u5883\u5149\r\n\r\n  translate(width\/2, height\/2);    \/\/\u7acb\u4f53\u306e\u4e2d\u5fc3\u3092\u753b\u9762\u4e2d\u592e\u306b\u79fb\u52d5 \r\n  rotateX(radians(-30));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  \r\n  \/\/directionalLight(r, g, b, nx, ny, nz);\r\n  \/\/nx, ny, nz\u306f\u5149\u6e90\u306e\u4f4d\u7f6e\r\n  \/\/\u7dd1\u306e\u5149\u3092z\u8ef8\u306e\u624b\u524d\u65b9\u5411\u304b\u3089\u5f53\u3066\u3066\u3044\u308b\r\n  directionalLight(0, 255, 0, 0, 0.5, -1); \r\n  \r\n  rotateY(radians(angle));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  box(150, 150, 150);    \/\/150 x 150 x 150px\u306e\u7acb\u65b9\u4f53\u3092\u63cf\u304f\r\n  \r\n  angle += 0.5;    \/\/\u89d2\u5ea6\u30920.5\u305a\u3064\u8db3\u3057\u3066\u3044\u304f\r\n  if(angle > 360.0) angle = 0.0;    \/\/360\u5ea6\u3092\u8d85\u3048\u305f\u30890\u306b\u623b\u3059\r\n}\r\n<\/pre>\n<h2>\u30cf\u30a4\u30e9\u30a4\u30c8<\/h2>\n<p>\u6b21\u306f\u30cf\u30a4\u30e9\u30a4\u30c8\u3067\u3059\u3002<br \/>\n\u3053\u3053\u3067\u306f\u3001\u5149\u305d\u306e\u3082\u306e\u306e\u93e1\u9762\u53cd\u5c04\u8272\u3092\u6307\u5b9a\u3059\u308blightSpecular(red, green, blue)\u3068\u3001  \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u305d\u306e\u3082\u306e\u306e\u93e1\u9762\u53cd\u5c04\u8272\u3092\u8a2d\u5b9a\u3059\u308bspecular(red, green, blue)\u304c\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_35_AM-284x300.png\" alt=\"10_6_15__1_35_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4376\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_35_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_35_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<p>\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u898b\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle = 0.0;\r\n\r\nvoid setup() {\r\n  size(400, 400, P3D);\r\n  background(0);\r\n  noStroke();\r\n}\r\n\r\n\r\nvoid draw() {\r\n  background(0);\r\n\r\n  ambientLight(10, 10, 10);    \/\/\u74b0\u5883\u5149\u3092\u5f53\u3066\u308b\r\n\r\n  pushMatrix();\r\n  translate(width\/2, height\/2, 0);\r\n  lightSpecular(50, 0, 0);    \/\/\u4f4e\u3044\u5149\u306e\u93e1\u9762\u53cd\u5c04\u8272\uff08\u30cf\u30a4\u30e9\u30a4\u30c8\uff09\u3092\u8a2d\u5b9a\r\n  \/\/lightSpecular(255, 0, 0);    \/\/\u9ad8\u3044\u5149\u306e\u93e1\u9762\u53cd\u5c04\u8272\uff08\u30cf\u30a4\u30e9\u30a4\u30c8\uff09\u3092\u8a2d\u5b9a\r\n  directionalLight(255, 255, 255, -1, 1, -1);    \/\/\u6307\u5411\u6027\u30e9\u30a4\u30c8\u3092\u8a2d\u5b9a\r\n\r\n  rotateX(radians(-30));    \/\/Y\u8ef8\u306b\u5bfe\u3057\u3066angle\u306e\u6570\u5024\u5206\u3060\u3051\u56de\u8ee2\r\n  specular(255, 255, 255);    \/\/\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8272\u3092\u8a2d\u5b9a\r\n  sphere(100);\r\n  popMatrix();\r\n}\r\n<\/pre>\n<p>lightSpecular(50, 0, 0)\u306e\u5834\u5408\u3001\u30cf\u30a4\u30e9\u30a4\u30c8\u306f\u7de9\u3084\u304b\u306b\u306a\u308a\u307e\u3059\u3002\u305d\u308c\u306b\u5bfe\u3057\u3066specular(255, 0, 0)\u306e\u5834\u5408\u306f\u30cf\u30a4\u30e9\u30a4\u30c8\u304c\u5f37\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n<h2>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8272<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_53_AM-284x300.png\" alt=\"10_6_15__1_53_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4373\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_53_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_53_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<p>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u305d\u306e\u3082\u306e\u306e\u8272\u306fspecular()\u3067\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle = 0.0;\r\n\r\nvoid setup() {\r\n  size(400, 400, P3D);\r\n  background(0);\r\n  noStroke();\r\n}\r\n\r\n\r\nvoid draw() {\r\n  background(0);\r\n\r\n  ambientLight(20, 20, 20);    \/\/\u74b0\u5883\u5149\u3092\u5f53\u3066\u308b\r\n  lightSpecular(255, 255, 255);    \/\/\u5149\u306e\u93e1\u9762\u53cd\u5c04\u8272\uff08\u30cf\u30a4\u30e9\u30a4\u30c8\uff09\u3092\u8a2d\u5b9a\r\n  directionalLight(100, 100, 100, 0, 1, -1);    \/\/\u6307\u5411\u6027\u30e9\u30a4\u30c8\u3092\u8a2d\u5b9a\r\n  \r\n  \/\/\u5de6\u306e\u7403\r\n  pushMatrix();\r\n  translate(100, height\/2, 0);\r\n  specular(255, 0, 0);  \/\/\u304a\u3076\u3058\u3047\u304ft\r\n  sphere(50);\r\n  popMatrix();\r\n\r\n  \/\/\u53f3\u306e\u7403\r\n  pushMatrix();\r\n  translate(300, height\/2, 0);\r\n  specular(0, 0, 255);  \/\/\u304a\u3076\u3058\u3047\u304ft\r\n  sphere(50);\r\n  popMatrix();\r\n}\r\n<\/pre>\n<h2>\u5149\u6ca2<\/h2>\n<p>\u5149\u6ca2\u306e\u5834\u5408\u306fshininess()\u3067\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_54_AM-284x300.png\" alt=\"10_6_15__1_54_AM\" width=\"284\" height=\"300\" class=\"alignnone size-medium wp-image-4372\" srcset=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_54_AM-284x300.png 284w, https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-content\/uploads\/2009\/06\/10_6_15__1_54_AM.png 400w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<pre lang=\"java\" line=\"1\">\r\nfloat angle = 0.0;\r\n\r\nvoid setup() {\r\n  size(400, 400, P3D);\r\n  background(0);\r\n  noStroke();\r\n}\r\n\r\n\r\nvoid draw() {\r\n  background(0);\r\n\r\n  ambientLight(20, 20, 20);    \/\/\u74b0\u5883\u5149\u3092\u5f53\u3066\u308b\r\n  lightSpecular(255, 255, 255);    \/\/\u5149\u306e\u93e1\u9762\u53cd\u5c04\u8272\uff08\u30cf\u30a4\u30e9\u30a4\u30c8\uff09\u3092\u8a2d\u5b9a\r\n  directionalLight(100, 100, 100, 0, 1, -1);    \/\/\u6307\u5411\u6027\u30e9\u30a4\u30c8\u3092\u8a2d\u5b9a\r\n  \r\n  \/\/\u5de6\u306e\u7403\r\n  pushMatrix();\r\n  translate(100, height\/2, 0);\r\n  specular(200, 200, 200);  \/\/\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8272\u3092\u8a2d\u5b9a\r\n  shininess(5.0);    \/\/\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u5149\u6ca2\u3092\u8a2d\u5b9a\r\n  sphere(50);\r\n  popMatrix();\r\n\r\n  \/\/\u53f3\u306e\u7403\r\n  pushMatrix();\r\n  translate(300, height\/2, 0);\r\n  specular(200, 200, 200);  \/\/\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8272\u3092\u8a2d\u5b9a\r\n  shininess(1.0);    \/\/\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u5149\u6ca2\u3092\u8a2d\u5b9a\r\n  sphere(50);\r\n  popMatrix();\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u3053\u306e\u30da\u30fc\u30b8\u3067\u306f\u3001processing\u4e0a\u3067\u306e\u30e9\u30a4\u30c8\u306e\u4f7f\u7528\u306b\u3064\u3044&#8230; <a href=\"https:\/\/r-dimension.xsrv.jp\/classes_j\/5_interactive3d\/\">Read more &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-1540","post","type-post","status-publish","format-standard","hentry","category-media_third"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/posts\/1540","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/comments?post=1540"}],"version-history":[{"count":8,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/posts\/1540\/revisions"}],"predecessor-version":[{"id":4377,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/posts\/1540\/revisions\/4377"}],"wp:attachment":[{"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/media?parent=1540"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/categories?post=1540"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/r-dimension.xsrv.jp\/classes_j\/wp-json\/wp\/v2\/tags?post=1540"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}