OSDN Git Service

first
[psychlops/cpp.git] / win32gl / test / shader_sample / readme.ja.txt
1 \82±\82Ì\83c\81[\83\8b\82ÍPsychlops\82É\82¨\82¯\82éGLSL\83T\83|\81[\83g\82ð\83e\83X\83g\82·\82é\83c\81[\83\8b\82Å\82·\81B\r
2 \89æ\96Ê\89E\89º\82Ì\83{\83^\83\93\8cQ\82Å\94C\88Ó\82ÌGLSL\83v\83\8d\83O\83\89\83\80\82ð\83\8d\81[\83h\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·\81B\r
3 GLSL/field\82ÅGrating\82È\82Ç\94C\88Ó\82Ì\8e®\82Ì\95`\89æ\82ð\81A\r
4 GLSL/image\82Å\94C\88Ó\82Ì\89æ\91\9c\82É\91Î\89\9e\82·\82é\95Ï\8a·\82ð\8ds\82¢\82Ü\82·\81B\r
5 PNG image\82ð\83\8d\81[\83h\82·\82é\82ÆGLSL/image\82É\93K\97p\82·\82é\89æ\91\9c\82ð\8d·\82µ\91Ö\82¦\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·\81B\r
6 \89æ\96Ê\8d\8fã\82Ì\95Ï\90\94\91\80\8dì\83{\83b\83N\83X\82ð\8eg\97p\82·\82é\82±\82Æ\82Å\81A\83V\83F\81[\83_\82Ö\82Ì\88ø\90\94\81i\8cã\8fq\81j\82ð\95Ï\82¦\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·\81B\r
7 \r
8 \r
9 \81¦\81i\92\8d\88Ó\93_\81j\r
10 \83O\83\89\83t\83B\83b\83N\83h\83\89\83C\83o\82É\82æ\82Á\82ÄGLSL\83R\83\93\83p\83C\83\89\82Ì\8eÀ\91\95\82É\8d·\82ª\82 \82è\82Ü\82·\82Ì\82Å\81A\r
11 \94z\95z\91O\82É\82Í\82²\8am\94F\82¢\82½\82¾\82¯\82Ü\82·\82æ\82¤\82¨\8aè\82¢\82µ\82Ü\82·\81B\r
12 \r
13 \r
14 \r
15 //////// \83V\83F\81[\83_\83v\83\8d\83O\83\89\83\80\82Ì\8f\91\82«\95û /////////\r
16 \r
17 \8d¡\89ñ\8bL\8fq\82µ\82Ä\82¢\82é\95û\96@\82Í\81AOpenGL2.0\8f\80\8b\92\82ðæ\90\82¤\83r\83f\83I\83J\81[\83h\82Ì\91½\82­\82É\8d\87\82í\82¹\82é\82½\82ß\82É\8dì\90¬\82µ\82½\8ed\97l\82Å\82·\81B\r
18 \8d¡\8cã\81A\82æ\82è\82æ\82¢\95û\96@\82É\95Ï\8dX\82·\82é\97\\92è\82Å\82·\82Ì\82Å\81A\82±\82ê\82ÍPsychlops1.5.0\82É\82¨\82¯\82é\8bL\8fq\96@\82É\82È\82è\82Ü\82·\81B\r
19 \r
20 \r
21 Psychlops\82Å\82Ì\83V\83F\81[\83_\82Ì\97\98\97p\82Í\8c»\8dÝ\82Í\83s\83N\83Z\83\8b\83V\83F\81[\83_\81i\83t\83\89\83O\83\81\83\93\83g\83V\83F\81[\83_\81j\82Ì\82Ý\97\98\97p\82µ\82Ü\82·\81B\r
22 \82±\82ê\82Í\81A\8ae\89æ\91f\82Ì\90F\82Ì\92è\8b`\82ð\8bL\8fq\82·\82é\82à\82Ì\82Å\81A\92Ê\8fí\82Ì\83v\83\8d\83O\83\89\83\80\82Å\95K\97v\82È\83\8b\81[\83v\82â\83\81\83b\83V\83\85\83O\83\8a\83b\83h\82ð\8f\91\82­\95K\97v\82Í\82 \82è\82Ü\82¹\82ñ\81B\r
23 \88È\89º\82ÌPsychlops/GLSL\81APsychlops/C++\81APsychtoolbox/Matlab\83R\81[\83h\82Í\91\8a\93¯\82Å\82·\81B\r
24 \r
25 \81yPsychlops/GLSL\81z\r
26 void main(void){\r
27   pix( sin(xp())/4.0+0.25 + sin(yp())/4.0+0.25 );\r
28 };\r
29 \r
30 \81yPsychlops/C++\81z\r
31 Image img(100,100);\r
32 Color col;\r
33 for(int x=0; x<100; x++) {\r
34   for(int y=0; y<100; y++) {\r
35     img.pix(x,y, col.set( sin(x)/4.0+0.25 + sin(y)/4.0+0.25 ) );\r
36   }\r
37 }\r
38 \r
39 \81yPsychtoolbox/Matlab\81z\r
40 [x,y] = meshgrid(0:100, 0:100);\r
41 m = sin(x)/4.0+0.25 + sin(y)/4.0+0.25 );\r
42 Screen(window, 'PutImage', m);\r
43 \r
44 \83R\83\93\83p\83C\83\8b\83G\83\89\81[\82Í\89æ\96Ê\8fã\82É\95\\8e¦\82³\82ê\82é\82Ù\82©\81A\8eÀ\8ds\83t\83@\83C\83\8b\82Æ\93¯\82\83p\83X\82É\82 \82é"GLSLTesterErrorLog.txt"\82É\8bL\98^\82³\82ê\82Ü\82·\81B\r
45 \r
46 \r
47 //// \88ø\90\94\82Ì\8eó\82¯\8eæ\82è\95û ////\r
48 \r
49 \r
50 \8c»\8fó\81APsychlops\82Ì\83V\83F\81[\83_\83v\83\8d\83O\83\89\83\80\82Å\82Í\81A\8ae\95`\89æ\92P\88Ê\82Ö\82Ì\88ø\90\94\82Í\r
51 \88È\89º\82Ì\8bL\96@\82É\82æ\82è\88ø\82«\93n\82µ\82Ü\82·\81B\r
52 \r
53  (GLSL\91¤)\r
54   in float contrast, frequency, orientation, phase;  // \81© main\90é\8c¾\82Ì\92¼\91O\82É"in float "\82É\91±\82¯\82Ä\88ø\90\94\82ð\83R\83\93\83}\8bæ\90Ø\82è\82Å\8bL\8fq\82µ\81A\8dÅ\8cã\82É\83Z\83~\83R\83\8d\83\93\82ð\91Å\82Á\82Ä\89ü\8ds\81B\82±\82±\82Å\8ew\92è\82µ\82½\8f\87\82ÉC++\91¤\82Ì\94z\97ñ\82É\8ai\94[\81B\r
55   void main(void) {\r
56   ...\r
57 \r
58  (C++\91¤)\r
59   double arg[16];                           // \81© \93n\82·\88ø\90\94\82ð\8ai\94[\82·\82é\94z\97ñ\82ð\97p\88Ó\81B\94z\97ñ\92·\82Í4, 8, 12, 16\82Ì\82¢\82¸\82ê\82©\8cÅ\92è\81B\r
60   shader_field.draw(area_rect, arg, 4);     // \81© ShaderField / ShaderImage\82Ì\91æ2\88ø\90\94\82Å\94z\97ñ\82ð\81A\91æ3\88ø\90\94\82Å\94z\97ñ\92·/4\82ð\8ew\92è\81B\r
61 \r
62 \r
63 \93à\95\94\93I\82É\83e\83N\83X\83`\83\83\8dÀ\95W\8ew\92è\82ð\8co\97R\82µ\82Ä\8eó\82¯\8eæ\82é\82æ\82¤\95Ï\8a·\82³\82ê\82Ü\82·\81B\r
64 Psychlops\82ð\8eg\97p\82·\82é\8cÀ\82è\82 \82Ü\82è\8aÖ\8cW\82 \82è\82Ü\82¹\82ñ\82ª\81A\r
65 \93à\95\94\82Ìgl_TexCoord\82Í[0]\81`[7]\82Ü\82Å\82 \82è\82Ü\82·\82ª\81A\82¤\82¿[3]\88È\8d~\82ÍPsychlops\82ª\8eg\97p\82µ\82Ü\82·\81B\r
66 \82Ü\82½\81AShaderImage\82ð\8eg\82¤\8fê\8d\87\82Í[0]\82à\8eg\97p\82µ\82Ü\82·\81B\r
67 \r
68 \r
69 \r
70 //// \8aî\96{\95\96@ ////\r
71 \r
72 GLSL\8cö\8e®\83T\83C\83g\82æ\82è\82²\8am\94F\82¨\8aè\82¢\82µ\82Ü\82·\81B\r
73 http://www.opengl.org/documentation/glsl/\r
74 \r
75 \r
76 \r
77 //// Psychlops\82Å\92è\8b`\82µ\82Ä\82¢\82éGLSL\8aÖ\90\94 ////\r
78 \r
79 const float PI; \89~\8eü\97¦\81i\92è\90\94\81j\r
80 const float E; \83l\83C\83s\83A\90\94\81i\92è\90\94\81j\r
81 \r
82 float xp() \89æ\91\9c\8d\8fã\82ð\8c´\93_\82Æ\82µ\82½x\8dÀ\95W\81i\83s\83N\83Z\83\8b\92P\88Ê\81j\82ð\93¾\82Ü\82·\81B\r
83 float yp() \89æ\91\9c\8d\8fã\82ð\8c´\93_\82Æ\82µ\82½y\8dÀ\95W\81i\83s\83N\83Z\83\8b\92P\88Ê\81j\82ð\93¾\82Ü\82·\81B\r
84 float rp() \89æ\91\9c\92\86\90S\82©\82ç\82Ì\8b\97\97£\82ð\93¾\82Ü\82·\81B\r
85 float thetaf() \89æ\91\9c\92\86\90S\82©\82ç\82Ì\8ap\93x\82ð\93¾\82Ü\82·\81B\r
86 float width() \89æ\91\9c\82Ì\95\9d\82ð\93¾\82Ü\82·\81B\r
87 float height() \89æ\91\9c\82Ì\8d\82\82³\82ð\93¾\82Ü\82·\81B\r
88 \r
89 void pix(in vec4 c); \89æ\91f\82É\90F\82ð\8ew\92è\82µ\82Ü\82·\81B\r
90 void pix(in float l); \93¯\8fã\r
91 void pix(in float l, in float a); \93¯\8fã\r
92 void pix(in float r, in float g, in float b); \93¯\8fã\r
93 void pix(in float r, in float g, in float b, in float a); \93¯\8fã\r
94 \r
95 vec4 getPix() \8c»\8dÝ\8f\88\97\9d\82µ\82Ä\82¢\82é\89æ\91f\82Ì\90F\82ð\93¾\82Ü\82·\81iShaderImage\90ê\97p\81j\r
96 vec4 getPix(in int x, in int y) \8dÀ\95W(x, y)\82Ì\89æ\91f\82Ì\90F\82ð\93¾\82Ü\82·\81iShaderImage\90ê\97p\81j\r
97 vec4 getPixOffset(in int x, in int y) \8c»\8dÝ\8f\88\97\9d\82µ\82Ä\82¢\82é\89æ\91f\82©\82ç(x, y)\82¸\82ê\82½\89æ\91f\82Ì\90F\82ð\93¾\82Ü\82·\81iShaderImage\90ê\97p\81j\r