Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
SEnYa_Zar
0 / 0 / 0
Регистрация: 27.10.2018
Сообщений: 3
1

Кубик Рубика на С++ и OpenGL

28.10.2018, 00:12. Просмотров 911. Ответов 29

Здравствуйте, я начал изучать С++ и мне дали задание сделать кубик рубика на С++ и OpenGL, до этого был front-end программистом, базу знаю. При изучении понял что такое ООП и тд, основные понятия. В инете нашел отличную(но сложную) реализацию и частично разобрался в ней, написал свой код, хочу узнать на правильном ли я пути, екземпляри классов сделал что бы была хоть какаета картинка, но понимаю что так не лзя)

В реализации видел масив 3х3х3 я понимаю что это и есть сам кубик но как применить массив в коде и зачем он, не понимаю, какую роль он играет и тд. В чем нужно мне разобраться?

И в целом подскажите что мне нужно почитать для того что бы абы как но реализовать эту задачу

Foto:



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
#include <cstdio>
#include <windows.h>
#include <glut.h>   //Подключение библиотеки glut.h
void disp();
void Draw();
float width = 1000.0, height = 800.0, deg = 0.0, degy = 0.0;
 
void Keyboard(unsigned char key, int x, int y)
{
    switch (key)
    {
    case 'a': deg--;
        break;
    case 'd': deg++;
        break;
    case 's': degy++;
        break;
    case 'w': degy--;
        break;
    case '1':
    {
        cubik1.rotate();
    }
        break;
    }
}
void Timer(int){
    glutTimerFunc(20, Timer, 0);
    glutPostRedisplay();
}
 
class SmallCube
{
public:
    void rotate()
    {
        glPushMatrix();
        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
        glRotatef(45, 0, 1, 0);
        glPopMatrix();
        glutSwapBuffers();
    }
    void Draw(int x, int y, int z)
    {
        /*
        glColor3f(0.0, 1.0, 0.0);           green
        glColor3f(1.0, 1.0, 0.0);           yellow
        glColor3f(0.0, 0.0, 1.0);           blue
        glColor3f(1.0, 0.0, 0.0);           red
        glColor3f(1.0, 1.0, 1.0);           white
        glColor3f(1.0, 0.0, 1.0);           magenta
        */
 
        // відмальовуємо основний каркас
        glPushMatrix();
        glRotatef(deg, 0, 1, 0);
        glRotatef(degy, 1, 0, 0);
        glTranslated(x, y, z);
        glBegin(GL_QUADS);
        //back
        glColor3f(1.0, 0.0, 1.0);
        glVertex3f(-50, 50, -50);
        glVertex3f(50, 50, -50);
        glVertex3f(50, -50, -50);
        glVertex3f(-50, -50, -50);
    
        glColor3f(1.0, 1.0, 0.0);
        glVertex3f(-50, 50, -50);
        glVertex3f(50, 50, -50);
        glVertex3f(50, 50, 50);
        glVertex3f(-50, 50, 50);
        //front
        glColor3f(0.0, 1.0, 0.0);
        glVertex3f(-50, 50, 50);
        glVertex3f(50, 50, 50);
        glVertex3f(50, -50, 50);
        glVertex3f(-50, -50, 50);
 
        glColor3f(1.0, 0.0, 0.0);
        glVertex3f(-50, -50, -50);
        glVertex3f(50, -50, -50);
        glVertex3f(50, -50, 50);
        glVertex3f(-50, -50, 50);
 
        glColor3f(1.0, 1.0, 1.0);
        glVertex3f(-50, 50, -50);
        glVertex3f(-50, -50, -50);
        glVertex3f(-50, -50, 50);
        glVertex3f(-50, 50, 50);
 
        glColor3f(0.0, 0.0, 1.0);
        glVertex3f(50, 50, -50);
        glVertex3f(50, 50, 50);
        glVertex3f(50, -50, 50);
        glVertex3f(50, -50, -50);
 
        glEnd();
        //відмальовуємо кубики
        
        glPopMatrix();
        
    }
    
};
 
SmallCube cubik1;
SmallCube cubik2;
SmallCube cubik3;
SmallCube cubik4;
SmallCube cubik5;
SmallCube cubik6;
SmallCube cubik7;
SmallCube cubik8;
SmallCube cubik9;
class Cubik
{
public:
    void drawAllCubiks()
    {
        cubik1.Draw(0, 0, 0);
        cubik2.Draw(-105, 0, 0);
        cubik3.Draw(105, 0, 0);
        cubik4.Draw(0, 105, 0);
        cubik5.Draw(105, 105, 0);
        cubik6.Draw(-105, 105, 0);
        cubik7.Draw(0, -105, 0);
        cubik8.Draw(105, -105, 0);
        cubik9.Draw(-105, -105, 0);
    }
};
 
Cubik cub;
 
void disp()
{
    glPushMatrix();
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    cub.drawAllCubiks();
    glPopMatrix();
    glutSwapBuffers();
}
 
 
 
//Войти в главный цикл
int main(int argc, char **argv)
{
    //Ініціалізація 
    glutInit(&argc,argv);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(width, height);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH);
    glutCreateWindow("MyFirstGlutProgram");
    glClearColor(0.0, 0.0, 0.0, 1.0);
    glEnable(GL_DEPTH_TEST);
    glLoadIdentity();
    glOrtho(-width / 2, width / 2, -height / 2, height / 2, -400, 400);
    //Реєстрація
    glutDisplayFunc(disp);
 
    glutTimerFunc(20, Timer, 0);
    glutKeyboardFunc(Keyboard);
    glutMainLoop();
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2018, 00:12
Ответы с готовыми решениями:

Кубик Рубика
Здравствуйте подскажите пожалуйста , хочу попробовать сделать кубика Рубика , пока стоит задача -&gt;...

кубик рубика
Нужна помощь. Никак не могу найти алгоритма. Мне нужно заштрихованный кубик передвинуть на 3 ряд...

Кубик Рубика
Задача такая,из любой позиции собрать кубик Рубика за минимальное число ходов(вывести алгоритм...

Кубик-Рубика
добрый вечер, форумчане) мне необходимо написать программу кубика-рубика. руководитель посоветовала...

Кубик Рубика
Здравствуйте)помогите пожалуйста если не трудно)) Изобразить на экране ЭВМ следующий рисунок

29
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 00:20 2
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
я начал изучать С++ и мне дали задание сделать кубик рубика на С++ и OpenGL
Эти два понятия не совместимы, мне кажется
Имхо, для начала советовал бы подучить С++ до уровня почти полностю прочтенной книги Липпмана, Праты или Страуструпа для новичков (можно что-то пропускать если уже знакомо). Потом (или паралельно) можно и смотреть в сторону OpenGL, если конечно хотите серьезно этим занятся.
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
до этого был front-end программистом, базу знаю
Базу чего?
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
При изучении понял что такое ООП и тд, основные понятия.
Ну, кстати к OpenGL не имеет отношения. Его можно учить и без глубоких познаний в ООП.
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
екземпляри классов сделал что бы была хоть какаета картинка, но понимаю что так не лзя
Почему это?
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
В чем нужно мне разобраться?
Забыть обо всем, выкинуть чужой код, выкинуть #include <glut.h> (при всем моем уважении к нему, но он устарел) и начать с 0 учить, например здесь https://learnopengl.com/
0
SEnYa_Zar
0 / 0 / 0
Регистрация: 27.10.2018
Сообщений: 3
28.10.2018, 01:03  [ТС] 3
Добавлено через 1 минуту
Azazel-San, 1. Мне нужно сделать что бы работало а дальше посмотрят (те кто дал задание) на уровень знаний и будут учить, просто я сейчас хочу понять правильно ли я делаю и возможно ли в целом реализация если я типо шарю но типо не очень (на уровне JavaScript)
2. Базу програмированния, на джвава скрипте просто пару циклов и все, а тут структури, памяти пару типов, функции, перегрузки, классы и тд, на сколько я понимаю это все мелочи.
3. OpenGL легко освоил, типо отрисовка и тд. Ничего сложного, сложно сделать повороты одной грани. И не поворот камеры через glRotatef а именно поворот елемента или группу элементов.
4. Просто я не уверен можно ли потом управлять гранями через такую реализацию
5. Мне бы сейчас без глубокого погружения в это все.
А статтю видел на Хабре похожую. Уроки по OpenGL назывались.
0
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 01:18 4
SEnYa_Zar, что-то я не пойму, кто что будет учить? Вам так и дали задание отрисовать кубик Рубика используя glut? OpenGL легко освоили?? Ну, оно и видно как.. и какой камеры, там до камеры ещё далеко, вращение делается матрицей поворота например. Ну или просто разместить его повернутым если он так и будет статичным, может в глуте ещё как-то можно я с ним плохо знаком
0
Nosey
1376 / 403 / 144
Регистрация: 22.10.2014
Сообщений: 872
Завершенные тесты: 2
28.10.2018, 12:58 5
SEnYa_Zar, объекты cubik1....cubik9 засуньте в приватную секцию(чтоб инкапсулировать не лучший по ООП интерфейс класса SmallCube) class Cubik, туда же добавьте метод void Keyboard(unsigned char key, int x, int y) которому делегируйте вызов из свободной соответствубщей функции.
И если вас функционал и opengl до 2000 года устраивает, то вы выполнили отличное бесполезное тестовое задание.
Которое не показывает нифига, но и придраться в общем-то не к чему.
0
EVP
509 / 271 / 60
Регистрация: 14.12.2010
Сообщений: 547
28.10.2018, 13:10 6
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
В реализации видел масив 3х3х3 я понимаю что это и есть сам кубик но как применить массив в коде и зачем он, не понимаю, какую роль он играет и тд. В чем нужно мне разобраться?
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
SmallCube cubik1;
SmallCube cubik2;
SmallCube cubik3;
SmallCube cubik4;
SmallCube cubik5;
SmallCube cubik6;
SmallCube cubik7;
SmallCube cubik8;
SmallCube cubik9;
class Cubik
{
public:
* * void drawAllCubiks()
* * {
* * * * cubik1.Draw(0, 0, 0);
* * * * cubik2.Draw(-105, 0, 0);
* * * * cubik3.Draw(105, 0, 0);
* * * * cubik4.Draw(0, 105, 0);
* * * * cubik5.Draw(105, 105, 0);
* * * * cubik6.Draw(-105, 105, 0);
* * * * cubik7.Draw(0, -105, 0);
* * * * cubik8.Draw(105, -105, 0);
* * * * cubik9.Draw(-105, -105, 0);
* * }
};
Убери в массив это безобразие.

Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
Здравствуйте, я начал изучать С++ и мне дали задание сделать кубик рубика на С++ и OpenGL, до этого был front-end программистом, базу знаю.
OpenGL обычно подразумевает использование мышки по полной,
т.к. пригодится в обработке касаний.
Ну и было бы неплохо увидеть всё в перспективе..
..если обучать берут, то тебя можно похвалить за смелость .

Удачи!
0
COKPOWEHEU
1265 / 910 / 210
Регистрация: 09.09.2017
Сообщений: 3,844
28.10.2018, 15:33 7
Цитата Сообщение от Azazel-San Посмотреть сообщение
Ну, кстати к OpenGL не имеет отношения. Его можно учить и без глубоких познаний в ООП.
... учитывая, что OpenGL штука процедурная ...
Цитата Сообщение от Azazel-San Посмотреть сообщение
екземпляри классов сделал что бы была хоть какаета картинка, но понимаю что так не лзя
Почему это?
А вот я согласен с ТСом: так писать нельзя. Уж больно много ошибок в таком коротком предложении: "екземпляри", "что бы", какаета", "не лзя".
Цитата Сообщение от Azazel-San Посмотреть сообщение
Забыть обо всем, выкинуть чужой код, выкинуть #include <glut.h> (при всем моем уважении к нему, но он устарел)
Да ладно вам, для такого проекта его хватит. Тут же не требуется даже скорости реакции на события.
1
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 17:05 8

Не по теме:

Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
так писать нельзя. Уж больно много ошибок в таком коротком предложении: "екземпляри", "что бы", какаета", "не лзя".
Ахах, спасибо, доставило! :)


Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Да ладно вам, для такого проекта его хватит. Тут же не требуется даже скорости реакции на события.
Ну, просто это очень странно, сомневаюсь что ещё кто-то всерьез пишет с использованием глута. Даже если возьмут учить то будут переобучать наново? Тем более без глута не очень то и сложнее реализовать тоже самое.
0
Jzx
-44 / 3 / 0
Регистрация: 31.12.2017
Сообщений: 198
28.10.2018, 17:24 9
Цитата Сообщение от Azazel-San Посмотреть сообщение
выкинуть #include <glut.h> (при всем моем уважении к нему, но он устарел)
А подскажите пожалуйста, какие неустаревшие библиотеки нужно использовать вместо глута? Или нужно кодить на чистом API?
0
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 17:47 10
Цитата Сообщение от Jzx Посмотреть сообщение
Или нужно кодить на чистом API?
OpenGL, это только спецификация, реализация на нас, ну, точнее, на производителе видеокарт, и их поддержке конкретной спецификации. Но вообще да, можно сказать писать придется на чистом API. Можете сами его описать или взять уже готовый типо glad.h, если вам нужен полный спек, конечно же.
0
EVP
509 / 271 / 60
Регистрация: 14.12.2010
Сообщений: 547
28.10.2018, 19:00 11
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
Здравствуйте, я начал изучать С++ и мне дали задание сделать кубик рубика на С++ и OpenGL
OpenGL - он разный бывает.
Цитата Сообщение от SEnYa_Zar Посмотреть сообщение
И в целом подскажите что мне нужно почитать для того что бы абы как но реализовать эту задачу
"Абы как" - "это же не наш метод."(с)

С++ идёт отдельной статьёй и требует отдельного разговора.

Что касается, графики то:
Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации.
Mathematics for 3D Game Programming and Computer Graphics.
OpenGL ES 3.0. Руководство разработчика.

"Надо, Федя, надо!"(с)

Успехов!
0
Jzx
-44 / 3 / 0
Регистрация: 31.12.2017
Сообщений: 198
28.10.2018, 19:24 12
Цитата Сообщение от Azazel-San Посмотреть сообщение
OpenGL, это только спецификация, реализация на нас, ну, точнее, на производителе видеокарт, и их поддержке конкретной спецификации. Но вообще да, можно сказать писать придется на чистом API. Можете сами его описать или взять уже готовый типо glad.h, если вам нужен полный спек, конечно же.
Я ничего не понял. Есть ли объективная необходимость в подключении сторонних графических библиотек? Или достаточно тех средств, которые предоставляет операционная система?
0
sty4ent
36 / 20 / 14
Регистрация: 23.10.2018
Сообщений: 99
28.10.2018, 19:26 13
Цитата Сообщение от Jzx Посмотреть сообщение
Или достаточно тех средств, которые предоставляет операционная система?
можно даже без неё обойтись
0
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 19:36 14
Цитата Сообщение от Jzx Посмотреть сообщение
Есть ли объективная необходимость в подключении сторонних графических библиотек?
Странный вопрос, зачем вам тогда OpenGL?
Цитата Сообщение от Jzx Посмотреть сообщение
Или достаточно тех средств, которые предоставляет операционная система?
Вы о создании окон? Тогда да, достаточно.
0
Jzx
-44 / 3 / 0
Регистрация: 31.12.2017
Сообщений: 198
28.10.2018, 19:45 15
Цитата Сообщение от EVP Посмотреть сообщение
Что касается, графики то:
Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации.
Эта книга 2006 года. Вы уверены?
Цитата Сообщение от Azazel-San Посмотреть сообщение
Странный вопрос, зачем вам тогда OpenGL?
А зачем был нужен GLUT? Цитирую:

Использование библиотеки GLUT преследует две цели. Во-первых, это создание кроссплатформенного кода. Во-вторых, GLUT позволяет облегчить изучение OpenGL. Чтобы начать программировать под OpenGL, используя GLUT, требуется всего страница кода. Написание аналогичных вещей на API требует несколько страниц, написанных со знанием API управления окнами операционной системы.
0
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
28.10.2018, 20:19 16
Цитата Сообщение от Jzx Посмотреть сообщение
А зачем был нужен GLUT?
Он не нужен, кроссплатформ уже "вшит" в OpenGL, при чем тут GLUT?
GLUT это устаревшая прослойка, придуманная какбы для упрощения работы с OpenGL, из которой для этого выпили часть возможностей и она ужасно устарела в нынешних реалиях ООП/функциональщини и arm-устройств и не только, поэтому серьёзные приложения не используют GLUT.
0
EVP
509 / 271 / 60
Регистрация: 14.12.2010
Сообщений: 547
28.10.2018, 21:20 17
Цитата Сообщение от Jzx Посмотреть сообщение
Что касается, графики то:
Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации.
Эта книга 2006 года. Вы уверены?
На всё сто Это хорошая книга для обучения.
Кликните здесь для просмотра всего текста

Не по теме:

К вопросу об актуальности: я также нахожу актуальными и сейчас некоторые книги, которым уже по две и более тысяч лет.

0
COKPOWEHEU
1265 / 910 / 210
Регистрация: 09.09.2017
Сообщений: 3,844
29.10.2018, 11:47 18
Цитата Сообщение от Azazel-San Посмотреть сообщение
Ну, просто это очень странно, сомневаюсь что ещё кто-то всерьез пишет с использованием глута.
glut одна из самых простых библиотек, там и учить-то особо ничему не надо.
Цитата Сообщение от Azazel-San Посмотреть сообщение
Или достаточно тех средств, которые предоставляет операционная система?
Вы о создании окон? Тогда да, достаточно.
Но неудобно. Лучше все же использовать библиотеки. Для начала та же glut сойдет, потом SDL или SFML, а то и Qt (если нужно развесистое системное GUI), это самые распространенные.
0
Azazel-San
Mental handicap
676 / 346 / 106
Регистрация: 24.11.2015
Сообщений: 1,631
Завершенные тесты: 1
29.10.2018, 14:14 19
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Для начала та же glut сойдет
Куда? Ее никто не использует, от слова вообще, она устарела, лишена множества функционала, непереносима, что там я еще забыл?
Нету смысла учить глут, а потом переобучивать..
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
потом SDL или SFML, а то и Qt
Это уже немного другое, SDL тоже устарел, хотя мне нравился, SFML - который вышел как бы на замену SDL, тоже устарел, никто эти две либы не юзает, разве что иногда отдельные составляющие как например загрузка текстур из SDL, остальное нет, дальше домашнего проекта это не используется.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Qt
Ну, тут совсем ужас если дело о wxWidgets
0
COKPOWEHEU
1265 / 910 / 210
Регистрация: 09.09.2017
Сообщений: 3,844
29.10.2018, 15:04 20
Цитата Сообщение от Azazel-San Посмотреть сообщение
Куда? Ее никто не использует, от слова вообще, она устарела
Тем не менее самая простая. Там вся инициализация в десяток строк, так что для простых проектов лучше вряд ли возможно найти.
Что функционал там слабый и что оно давно устарело я не спорю. Но все равно повторю: начать с нее можно именно потому что простая. Переучиваться почти не придется, даже наоборот, будет наглядно видно, как эти функции устроены внутри и насколько больше функционала можно выжать если их развернуть.
Цитата Сообщение от Azazel-San Посмотреть сообщение
непереносима
на какую конкретно платформу она непереносима? Под Windows и Linux работает точно, под BSD вроде тоже. Даже под Android гугл что-то выдает.
Цитата Сообщение от Azazel-San Посмотреть сообщение
Это уже немного другое, SDL тоже устарел
Эта информация откуда? Последний стабильный релиз 1 марта 2018, зеркало на github'е показывает изменения пару дней назад.
Цитата Сообщение от Azazel-San Посмотреть сообщение
SFML - который вышел как бы на замену SDL, тоже устарел
SFML не выходил на замену SDL, это разные библиотеки. Хотя бы в том, что SDL изначально процедурная, а SFML - ООП. Ну и последнее обновление SFML было пару дней назад
Не знаю с чего вы решили что они устарели. Да и чем их заменить в таком случае?
Цитата Сообщение от Azazel-San Посмотреть сообщение
Qt
Ну, тут совсем ужас если дело о wxWidgets
Мне заниматься развесистой GUI-ней не приходилось (вообще-то приходилось, но в детстве и на конструкторе форм от Borland'а, так что не считается). Сочетание подобных библиотек с OpenGL само по себе нечастое. Если уж нужна быстрая работа с графикой, под нее подстраивают все, в том числе оконные события. Собственно, поэтому glut, SDL и SFML до сих пор популярны: они не тянут ненужный функционал, зато дают достаточно простой фундамент для запуска графики и, в той или иной мере, взаимодействие с операционной системой.
0
29.10.2018, 15:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2018, 15:04

Кубик рубика в Паскале
Изобразить в графическом модуле паскаля Кубик рубика, с разноцветными квадратиками

Игра 'Кубик Рубика'
Ребят мне очень нужна ваша помощь. Помогите создать игру кубик рубик. Но без 3D модели. Никак не...

Как сделать кубик рубика?
Как сделать в 3дс максе понятно, а дальше нет.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru