LINUX.ORG.RU

Графика в с++

 


0

1

Подскажите какую лучше использовать библиотеку с графикой в с++ на linux для новичка.И подкиньте книгу как пользоваться этой библиотекой. Заранее спасибо.


Или просто задонать аффтару и качни сорцов примеров http://ogldev.atspace.co.uk/ (для tl;dr как они это сделали, там все сильно кликабельно)

slackwarrior ★★★★★
()
Ответ на: комментарий от rybis

Да там полно официальной документации. Не нужна книга (они быстро устаревают), по крайней мере по Qt. Если и нужна, то по C++.

peregrine ★★★★★
()

Ты хоть уточни какую графику имеешь ввиду? Окошки хочешь клепать, или игрульки писать?

EugeneBas ★★
()
Ответ на: комментарий от rybis

Если тебе нужно только 2D, и не слишком сложное, есть подозрение, что openGL тебе не нужен, и возможностей QGraphicsItem и др. тебе хватит за глаза.

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

hobbit ★★★★★
()

Я тут подумал...

Вообще, мне кажется, что при всей наивности вопросов ТСа, они явно высвечивают некую проблему. Человек хочет писать несложные кроссплатформенные графические приложения, и получается, ему для этого надо учить C++ и тыкать в современный openGL, который, если по честному - ассемблер в области 3D.

Мне кажется, на C++ надо написать движок, а поверх этого движка напрашивается простенький язык, на котором можно писать что-нибудь типа

Scene scene w, h, z
{
Light l1 x, y, z, type, color;
Light l2 ...
Ball b ...
}

Ну и так далее. И как можно менее черезжопным образом пришивать к этому логику на чём-нибудь типа JavaScript или что сейчас считается языком для начинающих. Ну не всем же писать игры AAA-класса в самом деле...

Что интересно - когда грёзы про VR только начинались, движение шло именно в этом направлении. Был VRML первой версии, весьма похожий на то, что я написал. И его бы на современные процессоры и современные сетевые каналы... Но - не дожил. Был 3DML, ещё более простой, правда, и более узконаправленный. А сейчас для веба продвигают WebGL, который опять-таки по низкоуровневости где-то в районе ассемблера, при этом в отличие от обычного ассемблера жрёт ресурсы, как не в себя.

Пожалуй, что в роли платформы для построения 3D-программ можно рассматривать OpenSim: тут тебе и примитивы, и скриптовый язык, и многопользовательский режим из коробки... Но там другая крайность, там начальную сцену можно создавать ТОЛЬКО визуально, одним скриптом на 10 строк не обойдёшься. Да и поднятие OpenSim - занятие не для новичков, если только на готовом хостинге что-то ваять...

Выдохнул.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от rybis

В подлиннике - Шлее М. - Qt 5.3. Профессиональное программирование на C++ [2015]
В подлиннике - Шлее М. - Qt 4.8. Профессиональное программирование на C++ [2012]

x905 ★★★★★
()
Ответ на: комментарий от hobbit

Скажите начать с qt будет нормально? Я пока что элементарной графикой обошолся бы потому что я далеко еще не про в с++. А хочется как то программки оформить чтобы друзьям показать. И хочу сделать прогу чтобы кучу нужных формул понапихать туда чтобы прога решала задачки разные.

rybis
() автор топика
Ответ на: комментарий от rybis

Скажите начать с qt будет нормально?

В принципе, нормально, но я бы поначалу всё же примеры из учебника на чистых плюсах понабирал бы и покомпилировал. C++ - язык всё же весьма своеобразный, если, например, ты неправильно напишешь стража компиляции или укажешь неправильный заголовочный файл - сообщение об ошибке ты получишь, конечно, но вот связь его с причиной ошибки может быть в некоторых случаях... ну очень неочевидной. А Qt над абстракциями C++ ещё свои абстракции строит...

Ни в коем случае не запугиваю и не отговариваю - просто предлагаю чуть в языке попрактиковаться. И книжки по Qt не заменяют книжки по C++, читать надо и те, и другие.

hobbit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.