2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2, 3, 4, 5  След.
 
 На чём писать рисовальную программу?
Сообщение29.03.2018, 23:11 
Заслуженный участник


31/12/15
936
Освоив OpenGL до уровня полупрозрачных предметов, хочу написать программу с красивыми картинками (для интерактивных геометрических построений). На экране будут пересекающиеся полупрозрачные сферы разного цвета. Писать ли мне на
1) C++/Java
2) Go без отладчика
3)язык D рекомендуют
4)всякая экзотика (Scala какая-нибудь)
5)ещё варианты

Лично мне из всех языков больше нравится Lua, но Lua устроена по принципу "сделай сам" (хочешь рисовать - сам оберни OpenGL)

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение29.03.2018, 23:53 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
george66 в сообщении #1300442 писал(а):
хочу написать программу с красивыми картинками (для интерактивных геометрических построений)
3DS Max что ли? Так написана же уже...

А в остальном, стандартная рекомендация для вопроса "какой язык взять" - "какой лучше знаешь". Для случая с OpenGL еще можно добавить "и в каком есть нужные библиотеки".

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 00:45 
Заслуженный участник


27/04/09
28128
+много. Ну и иногда язык совсем уж бедный. Но это редкость в наши дни.

-- Пт мар 30, 2018 02:47:05 --

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

-- Пт мар 30, 2018 02:48:15 --

george66 в сообщении #1300442 писал(а):
но Lua устроена по принципу "сделай сам" (хочешь рисовать - сам оберни OpenGL)
Может, кто-то всё-таки сделал достаточно для ваших целей полную обёртку? (Не знаю.) Она может существовать, не отчаивайтесь так сразу.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 01:41 
Заслуженный участник


09/05/12
25179
arseniiv в сообщении #1300465 писал(а):
Может, кто-то всё-таки сделал достаточно для ваших целей полную обёртку? (Не знаю.) Она может существовать, не отчаивайтесь так сразу.
Lua очень часто используется в качестве скриптового языка для игровых движков. Наверное, из этого должно следовать, что средства работы с OpenGL для нее существуют (хотя это сугубо теоретический вывод - я тоже люблю Lua, но никогда не было повода поинтересоваться реальным положением дел в этой области).

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 15:15 
Заслуженный участник


15/05/05
3445
USA
george66 в сообщении #1300442 писал(а):
5)ещё варианты
Например, Python + PyOpenGL.
Хотя лично я воспользовался бы C++.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 16:15 
Заслуженный участник
Аватара пользователя


01/09/13
4656
george66 в сообщении #1300442 писал(а):
для интерактивных геометрических построений

А как должен выглядеть процесс с точки зрения пользователей?
А то я бы делал web-based с использованием THREE.js https://threejs.org

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 16:29 
Заслуженный участник


31/12/15
936
На WebGL я пробовал, но там трудно делать прозрачность (страница имеет фон, который просвечивает сквозь прозрачные предметы). К тому же javascript - язык панков, как объяснил один программист.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 16:43 
Заслуженный участник
Аватара пользователя


01/09/13
4656
george66 в сообщении #1300552 писал(а):
но там трудно делать прозрачность (страница имеет фон, который просвечивает сквозь прозрачные предметы

Вроде бы у меня не было трудностей. Кроме того, всегда можно подложить/задать фон нужного цвета...

george66 в сообщении #1300552 писал(а):
К тому же javascript - язык панков, как объяснил один программист.

Это он с PHP перепутал :mrgreen: Кроме того, это больше зависит от программиста, а не от языка.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 18:12 
Заслуженный участник


16/02/13
4207
Владивосток
george66 в сообщении #1300552 писал(а):
как объяснил один программист
Дык назовите любой язык — и куча программистов объяснят вам, что этот язык бяка :mrgreen:

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 19:51 
Заслуженный участник


02/08/11
7004

(Оффтоп)

Pphantom в сообщении #1300480 писал(а):
Наверное, из этого должно следовать, что средства работы с OpenGL для нее существуют
Не, между OpenGL и игровым движком много слоёв абстракций.


-- 30.03.2018, 20:57 --

george66 в сообщении #1300442 писал(а):
язык D рекомендуют
На D некоторое время пилили открытый движок OpenMW для самой лучшей и непревзойдённой компьютерной игры Morrowind. В какой-то момент бросили это дело и перешли на C++. Причин было две: 1) достала необходиость писать и, самое главное, поддерживать по мере обновления обёртки для C++ библиотек, 2) многие из тех, кто хотел поучаствовать в проекте, знали C++, но не знали D (и не хотели учить, что вполне понятно: несмотря на все свои положительные качества, язык мёртв).

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 21:43 
Заслуженный участник


31/12/15
936
Я начинал учиться на WebGL (оно проще), но когда дошёл до сложных эффектов, перестало получаться. Тогда перешёл на OpenGL и получилось. Впечатление, что с javascript лучше серьёзных дел не иметь (его создатель хвастался, что сочинил язык за два вечера - это, к сожалению, видно). Lua очень хороша, но её долго использовали вполсилы. Сейчас есть компилятор LuaJIT, который выдаёт очень быстрые программы
http://blog.carlesmateo.com/2014/10/13/ ... languages/
и позволяет вставлять куски кода на C (особенно структуры данных полезно). Куклев говорит, что лучшие на сегодня языки - это F# и F*, но там придётся всё самому обёртывать. Патрышев говорит "А вот хоть Хаскелл" (наверное, шутит).

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 22:30 
Заслуженный участник
Аватара пользователя


01/09/13
4656
george66 в сообщении #1300605 писал(а):
но когда дошёл до сложных эффектов, перестало получаться.

А что именно?
george66 в сообщении #1300605 писал(а):
Впечатление, что с javascript лучше серьёзных дел не иметь

Вы так и не описали требования.... и да, если у Вас "за картинкой" тяжёлая математика, то JS, действительно, не подойдёт...

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 23:33 
Заслуженный участник


31/12/15
936
Не получалась полупрозрачность! Может, не хватило терпения. Рисую полупрозрачные предметы, сдирая слой за слоем спереди назад (front to back peeling). Особо сложной математики там нет. К тому же попутно хочу потренироваться в программировании, так лучше в C тренироваться, чем в javascript.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение30.03.2018, 23:51 
Заслуженный участник


02/08/11
7004
george66 в сообщении #1300624 писал(а):
так лучше в C тренироваться, чем в javascript
Не факт. Хотя по-большому счёту без разницы.
Сам я бы писал подобное на Rust. Но сомневаюсь, насколько это будет удачным вариантом для человека, которому требуется тренироваться в программировании. Rust в этом плане схож с Haskell — и в том и в другом случае просто уметь программировать совершенно не достаточно, надо уметь программировать именно на Rust/Haskell.

 Профиль  
                  
 
 Re: На чём писать рисовальную программу?
Сообщение31.03.2018, 15:31 
Заслуженный участник


27/04/09
28128
george66 в сообщении #1300605 писал(а):
его создатель хвастался, что сочинил язык за два вечера - это, к сожалению, видно
Современный JS далеко ушёл от того, что было когда-то давно. Хотя он всё равно страшный. Но аргумент у вас неправильный.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 64 ]  На страницу 1, 2, 3, 4, 5  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: worm2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group