Давайте пограємо зі змією/Скриптуємо Блендер: відмінності між версіями

Вилучено вміст Додано вміст
Bunyk (обговорення | внесок)
Створена сторінка: == Привіт світ! == Скрипти можна писати як у вбудованому редакторі Блендера, так і в зовніш...
 
Bunyk (обговорення | внесок)
Немає опису редагування
Рядок 1:
== Нащо воно взагалі треба? ==
Якщо ми хочемо просунутись до програмування трьохвимірних ігор, нам обов'язково треба включити в свій арсенал хоч якийсь редактор. Бо навіть простенька модель кубика, якщо її малювати вручну, з коду буде виглядати так:
 
<source lang="cpp">
glBegin(GL_POLYGON);
glVertex3f(1.000000,1.000000,-1.000000);
glVertex3f(1.000000,-1.000000,-1.000000);
glVertex3f(-1.000000,-1.000000,-1.000000);
glVertex3f(-1.000000,1.000000,-1.000000);
glEnd();
 
glBegin(GL_POLYGON);
glVertex3f(1.000000,0.999999,1.000000);
glVertex3f(-1.000000,1.000000,1.000000);
glVertex3f(-1.000000,-1.000000,1.000000);
glVertex3f(0.999999,-1.000001,1.000000);
glEnd();
 
glBegin(GL_POLYGON);
glVertex3f(1.000000,1.000000,-1.000000);
glVertex3f(1.000000,0.999999,1.000000);
glVertex3f(0.999999,-1.000001,1.000000);
glVertex3f(1.000000,-1.000000,-1.000000);
glEnd();
 
glBegin(GL_POLYGON);
glVertex3f(1.000000,-1.000000,-1.000000);
glVertex3f(0.999999,-1.000001,1.000000);
glVertex3f(-1.000000,-1.000000,1.000000);
glVertex3f(-1.000000,-1.000000,-1.000000);
glEnd();
 
glBegin(GL_POLYGON);
glVertex3f(-1.000000,-1.000000,-1.000000);
glVertex3f(-1.000000,-1.000000,1.000000);
glVertex3f(-1.000000,1.000000,1.000000);
glVertex3f(-1.000000,1.000000,-1.000000);
glEnd();
 
glBegin(GL_POLYGON);
glVertex3f(1.000000,0.999999,1.000000);
glVertex3f(1.000000,1.000000,-1.000000);
glVertex3f(-1.000000,1.000000,-1.000000);
glVertex3f(-1.000000,1.000000,1.000000);
glEnd();
</source>
 
А в ньому всього то шість граней. Ви порахуйте скільки граней у цієї лисої пані:
 
[[File:Blender3D UVTexTut2.png]]
 
А якби вона була не лиса? От тому без 3d редактора ми нікуди не просунемось. Обрати Blender варто вже тому, що він безплатний, функціональний, має вбудований ігровий рушій, і скриптується нашим любимцем Пайтоном.
 
Щоб трохи розібратись з інтерфейсом Блендера який спочатку шокує, майже як штурвал літака, варто сісти на кілька годин за підручник, і потицяти кнопки. Про Блендер можна прочитати:
 
*[[:en:Blender 3D: Noob to Pro|Blender 3D: Noob to Pro]] - англійський вікіпідручник, один з кращих які можна знайти в мережі.
*[http://blender3d.org.ua/tutorial/371.html Blender: первые шаги в Python]
*[[Blender]] - вікіпідручник, в зародковій стадії, його треба не читати, а скоріше писати.
 
== Привіт світ! ==
 
Рядок 90 ⟶ 149:
try:
for face in mesh.faces:
out.write("glBegin(GL_TRIANGLESGL_POLYGON);\n")
for vert in face.v:
c=mesh.verts[vert.index].co
Рядок 105 ⟶ 164:
 
== Генерація свого мешу ==
 
== Посилання ==
#http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Python_Scripting