Результаты поиска
| |
Archido | Дата: Пятница, 01 Марта 2013, 05:36 | Сообщение # 281 | Тема: Алгебра для программиста |
Сэнсэй
Сейчас нет на сайте
| Цитата (Matou) Это сначала так кажется Цитата (Robinzon787) мне нужно знать кучу формул? Всякие декременты и инкременты? Думается, ТС'у это будет казаться таки долго. Какой же матан без декрементов и инкрементов?
Цитата (Robinzon787) Я не спрашиваю нуна ли она именно программисту, я спрашиваю нужна ли она при поступлении, сдачи экзамена в институт или что там еще? Просто боюсь завалю экзамен, а там полгода в армии, а дальше незнаю. Про ЕГЭ уже сказали. Другое дело, что на продвинутых тех. специальностях вместо обычной "высшей математики" ее там много: матан, линейная алгебра, дискретка, мат. логика, вычислительная математика, теория вероятностей. У нас все это добро занимало пару лет (два курса). Так вот, так или иначе вся эта математика базируется на знаниях школьной алгебры и геометрии, без них ты просто все это добро не осилишь и пойдешь отдавать свой долг родине.
Правда, на данный момент я не уверен столько ли математики будет именно сейчас, ибо образование закашивают под европейское (так называемый "болонский процесс") и учитывая, что база теперь - бакалавриат с 4-мью годами обучения, программы скорее всего таки порежут. И получится полная хрень.
У нас, кстати, матан на пару с еще одной дисциплиной являлись неплохими такими фильтрами. Скажем, к концу третьего курса обычно две группы ПО объединяли в одну, ибо уже народа маловато даже в сумме
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 28 Февраля 2013, 13:09 | Сообщение # 282 | Тема: Алгебра для программиста |
Сэнсэй
Сейчас нет на сайте
| Не нужна. Инфа 100%
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 21 Февраля 2013, 15:18 | Сообщение # 283 | Тема: Мощный игровой ноутбук в пределах 1600$ |
Сэнсэй
Сейчас нет на сайте
| Цитата (mrResident) Народ, еще такой вопрос, что лучше, ноут с экраном 15" и fullhd или 17" fullhd? Как fullhd смотрится на 15" экранах? Сойдет, но семнашка будет лучше. Я выше писал, что у меня 15" FullHD и немного напрягает, ибо мелковато местами, но вполне жизнеспособно. Для графики вообще нормально. Но 17" FullHD будет лучше.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Четверг, 21 Февраля 2013, 15:18 |
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 17:46 | Сообщение # 284 | Тема: Разработка на Android с C# |
Сэнсэй
Сейчас нет на сайте
| Цитата (Undead) Там не совсем виртуальная машина. В .Net и его реализациях код компилится во время выполнения JIT компилятор - часть фреймворка Net или Mono. Я обычно и называю его (фрейм) "виртуальной машиной", ибо без него код компилиться и исполняться не может.
И поэтому MonoGame без него не заведется, как и не заведется XNA без .Net'a.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 17:41 | Сообщение # 285 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (warzes) Посмотри авторство, конкретно это я не писал (вообще все страницы в десяток слов писал не я, а другой человек, я либо пишу полную статью, либо не пишу ее вообще). По бампу я пока не собираюсь писать статью. Так зачем писать "Но ведь я так и начинал" в ответ на мою цитату про фонга. Сам поди еще не разобрался, а всем уже советуешь. И да - это ни разу не бамп.
Цитата (warzes) И где я фантазер? Своих проектов, ровно один, пилят много лет, зарплату платят, да еще и вакансии имеются. За это время не обанкротились. Ога, плавают и пойдет
Цитата (warzes) Автор темы сказал что он работал с движками и теперь хочет все это делать сам, есть подозрения что ему тоже интересен сам процесс программирования, а не конечная игра Цитата (Deswing) Моя цель - я хочу писать игры, но при этом не используя движки. Так, что "возня с мобильными играми" имеет вполне себе реальный смысл. Это более реально чем сто лет писать движок под DX11.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 14:26 | Сообщение # 286 | Тема: Разработка на Android с C# |
Сэнсэй
Сейчас нет на сайте
| Цитата (Undead) Он правда работает. Это реализация XNA на основе mono. Я не об этом. Без виртуальной машины (в конкретном случае - "mono for android" или аналога) исполнять С#'шный код все равно не выйдет, пусть там хоть все остальное open-source и бесплатно.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 13:14 | Сообщение # 287 | Тема: Разработка на Android с C# |
Сэнсэй
Сейчас нет на сайте
| Цитата (nilrem) Есть овпенсорсный MonoGame, который работает на iOS, Android, Mac , Linux, Windows, Windows8, Playstation, Xbox 360. Ога, а исполнять байт код кто будет?
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 12:58 | Сообщение # 288 | Тема: Разработка на Android с C# |
Сэнсэй
Сейчас нет на сайте
| Цитата (Stage) http://www.dot42.com/ И чего? Стоимость аналогичная.
Цитата (musicfuns) Вот ищу альтернативы . Сейчас присматриваюсь к Gideros Studio , правда там LUA , а не C# , но меня устраивает . Java все таки лучшая альтернатива , и на C# похож и "родной" для Android'a все таки.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 12:47 | Сообщение # 289 | Тема: Мощный игровой ноутбук в пределах 1600$ |
Сэнсэй
Сейчас нет на сайте
| mrResident Asus ROG - хороший вариант, у самого G53 . Но иногда FullHD на 15" немного напрягает, 17 бы было в самый раз.
Если такое под заказ, то из-за бугра есть возможность тянуть (последняя сылка именно такая)? Ибо я себе из США привозил (заказывал) ноут и разница с нашими ценами была налицо (в лучшую сторону) + у Асусов гарантия всемирная, что тоже хорошо. Есть например такой вариант - семнашка, в 1600 уложишься.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 20 Февраля 2013, 12:30 | Сообщение # 290 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (warzes) В опенсурсе таких много, вон в FTGL так рисуют Хех, ну бывает. Это на их совести.
Цитата (warzes) Но ведь я так и начинал. И даже если копипаст, он всегда будет перед глазами, а книга с теорией будет выкинута и забыта. Ну может ты один такой , но я например что-то не видел у тебя чего-нить про tangent space (ибо попиксельное освещение без того же NM - смысла сейчас не имеет ). А ща ради интереса заглянул на вики - увидел там "Bump mapping" и прочитал: "normal,tangent и binormal - три нормали поверхности.". Epic. Закрыл . На GameDev'e, кстати, можно периодически наблюдать выскакивающие темы про Normal / Parallax mapping и Tangent space, и создают эти темы далеко не полные нубы, что как бы намекает.
Есть такая штука: "Теория без практики - мертва, практика без теории - слепа". С помощью копипаста можно конечно пытаться разбираться, но до поры до времени... Однажды поставят некую новую непростую задачу и окажется, что кода для копипаста в свободном доступе по ней нет. И чего? А теорию мы не ассилим.
Цитата (warzes) Но моя мысль не об этом, а о том что это бесполезные знания, на которые новичку придется тратить много времени чтобы потом от них отказаться Ну что например? glBegin/glEnd? glMatrixMode? Ты на это тратил много времени? Ну грустно, если тратил
Цитата (warzes) Зато я пытал андроид, еще на создании приложения понял что легче выучить java чем мучится с NDK, потому что все равно без java приложение не создать Там 100 строчек кода для окна, контекста и обработки ввода. Остальное все С++. Ничего особенного.
Цитата (warzes) новичок тоже завтра профи не станет За год можно неплохо уже разобраться, а новые девайсы вытеснят старые не ранее чем через года 3-4.
Цитата (warzes) И ведь это не какие-то там суперразработчики, а вполне обычные, хоть и не начинающие Все сильно надуманно. В одном из интервью есть такая фраза: "The team formed in February 2011, made up of veterans from bigger Finnish game companies like Remedy Entertainment (Alan Wake) and Futuremark (Shattered Horizon).". У них был опыт, у них были наработки (и уверен, что много), поэтому это совсем другой случай. Да и сколько таких амбициозных проектов заваливается в процессе разработки - сотни просто, ибо небольшой команде (без особого опыта) тягаться в ПК секторе - сложно и риски большие, если сфейлят. Так что.
Цитата (warzes) А может им это и не надо? Зарплату платят, так зачем что-то там пытаться делать? А ты знатный фантазер. Этот движок начинался как любительская поделка одного человека и до сих пор его этот человек в основом и разрабатывает. Он уже 10 лет своей жизни на него положил, считай его детище. И на геймдеве много ранее писали, что они там пахали без отпусков и почти без выходных, целыми днями. Ну да, зарплату платят и хорошо.
Цитата (warzes) И откуда новичок будет это фильтровать? Откуда он будет знать что лишнее, а что сейчас является сверхмодным. Сейчас уже сложнее ответить на этот вопрос. Я в свое время, будучи нубом, никогда не использовал glLight / glMaterial или D3D9Material, успешно их фильтруя - знал, что шейдерами можно делать. Теорию не нужно зубрить от корки до корки, а вдумчиво изучать, выбрасывая все ненужное. Форумы, например, читать - чтобы быть в курсе всего нового (хотя бы в теории).
Цитата (warzes) Вообще я здесь считаю что если под такие разрабатывать, то лучше сразу брать готовые движки, вон под андроид через движки можно хоть на шарпе писать. Все таки мобильные платформы слишком специфичны Точно также можно брать движки под ПК и вообще GAPI не изучать и писать на lua. Их "специфика" точно такая же как, скажем, "специфика" консолей. Отличается от ПК - и сразу баттхерт.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 19 Февраля 2013, 06:15 | Сообщение # 291 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (warzes) отказ от fixed pipeline Я так и думал.
Цитата (warzes) хотя да, умники юзающие OGL 4 и при этом рисующие через glBegin/glEnd до сих пор находятся и считают что это нормально, для таких да - разницы никакой Таких не наблюдал , когда производительности не хватает и узнаешь что из видеопамяти рисовать быстрее - переход на VBO обеспечен. У меня в свое время такой переход произошел до применения шейдеров.
Цитата (warzes) Я разобрался именно благодаря программируемому, где мне надо не стены английских слов читать об всяких затенениях по Фонгу а руками эти самые затенения делать (это я про освещение и про то что в фиксированном оно было встроено) Ну да. Мы ведь о новичках говорим правда? Я не спорю - конечно проще самому фигачить Фонга, вкуривая что такое Tangent space, строить правильный Tangent Basis. Потом в шейдере переводить источник в этот space, считать свет по ламберту + фонгу + апроксимацию шлика еще прикрутить. Да, это действительно проще для новичка. Но копипаст еще никто не отменял, согласен.
Цитата (warzes) И что? А еще почти все мобильные приложение комфортно можно прогать только на java (любой другой язык требует кучу костылей и танцев с бубном) Ты сам писал чего? Или пофантазировать решил просто? Да и вообще приложения в целом - это отдельная тема, мы о графике сейчас говорим. Для примера, на iOS документация для разработчиков не хуже чем у майкрософта, в плане ЯП - хочешь пиши на ObjC, хочешь на плюсах. Все там бодро и уютно.
Цитата (warzes) но вы же сами выше писали что учиться прогать надо на чем попроще Так и есть. Ты предлагаешь забить на "умершие" 2.0 OGL и 9-тый DX, на что я привожу в пример мобильный рынок, где 2.0 в данный момент используется по полной программе. И имеет смысл его учить, чтобы в итоге покодить под моб. девайсы, когда знаний хватит.
Цитата (warzes) И потом, то что они это поддерживают сейчас, не значит что они это будут поддерживать через год-два (или есть индивидумы которые за месяц с нуля изучив GAPI могут написать крайзис?) Те, что есть на рынке сейчас и появятся в близжайшее время так или иначе будут поддерживать 2.0 всю свою оставшуюся жизнь. Третий стандарт, само собой, скоро нарисуется (точнее уже) и пойдут девайсы с ним, но это займет время. И даже когда наступит такой момент, 2.0 не исчезнет с рынка в сию же минуту - его придется поддерживать, чтобы не терять аудиторию. И этот процесс будет происходить еще в течении некоторого времени. Так, что OpenGL 2.0 в близжайшие годы будет пока актуален.
Про индивидов с крайзисом - это больше подходит для тех, кто люто доказывает всем, что DX11 - это светлое будущее. В "большом" геймдеве (ПК, консоли) написать конкурентно способный движок - это почти подвиг. Я уже приводил в пример Unigine - 10 лет уже пилят и кое-что вроде получилось, но популярностью он пока не пользуется. В мобильном секторе же, 2Д пока в наибольшем почете... При должных знаниях OpenGL и программирования в целом - написать небольшой 2Д движок можно за несколько месяцев, ну полгода - край. И пилить игру - есть даже шансы кое-чего заработать Но кто-то пилит в одиночку убийцу крайзиса на DX11 - есть такое, да.
Цитата (warzes) Скоро выйдут новые консоли (не слежу, но вроде как анонс той же PS должен быть в этом месяце, xbox этим летом), как минимум xbox будет на DX 11. Значит PS будет скорее всего на OGL 3-4. Мультиплатформенные проекты подтолкнут мобильное железо Выйдут и выйдут - это все "большой" геймдев, мобильный рынок его никак не касается - там чутка другие законы. Раз он мобильный, то там часто ставят вопрос о габаритах и автономной работе в первую очередь, что напрямую влияет (и является сдерживающим фактором) на итоговую производительность. Ибо процессоры с большой площадью кристалла воткнуть некуда, тепло с них нужно бодро отводить, а относительно малый размер устройства ограничивает увеличение системы охлаждения. Точно также ограничение накладывает аккумулятор, который при мощях испаряется на глазах и еще нехило нагревается (у Ipad'ов были с этим траблы). Так, что не все так просто.
Другое, что новый GAPI вроде OGL 3-4 или DX11 не только меняет сам AP интерфейс, но и добавляет новые "фичи", которые поддерживаются железом. Скажем, всякие геом. шейдеры, тесселяции, возможность чтения из текстуры MSAA семплов (что дает возможность в HDR аппаратный AA делать), поддержка Int текстур или 64 Float, Textures Arrays и прочее. Мобилкам этого еще долго не видать, да и не нужно это - уровень совсем другой пока. Ибо даже нормальную физику завести там мощей не хватает, так что...
Цитата (warzes) Вот, приведу пример, новичок так радостно изучает OGL 2.0, читает какую-нибудь red book, нарисовал первый квадрат. и вот он решает изучить ogl 3.0. И вот есть такая функция glEnable(GL_TEXTURE_2D); здесь включаем забинденную текстуру. Так вот, в OGL 3.3 нет такого флага GL_TEXTURE_2D. Новичок управлял матрицами через всякие glOrtho, glFrustum, glMatrixMode, или даже банальные glTranslation, glScale, glRotate (при этом совершенно не понимая что эти команды делают внутри себя). В OGL 3.3 нет таких команд. Ты считаешь - что все новички поголовные идиоты и если они не найдут в новом ОГЛ "glEnable(GL_TEXTURE_2D);" сразу впадут в панику? Это просто особенности API - не более, в одном есть, в другом - нет. Про матрицы - когда берут сторонюю мат. либу (как правило копипастом) - они пользуются готовыми ф-циями из оной и разница только в том, что они пермножают эти матрицы и отдают, скажем, в шейдер. То, что там внутри происходит до сих пор никто не знает. И в обоих случаях чтение мат. теории решает этот вопрос. Человек нормально изучивший тот же OGL 2.0 - уже новичком не считается и без труда передет на любой другой GAPI.
Цитата (warzes) Ну и конечно я думаю каждый (даже я) рисовал спрайты для двухмерной игры через квады. в OGL 3.3 квадов нет Ога, узнав, что в OGL 3.3 нет квадов - люди не выдержали и покончили жизнь самоубийством , как же иначе. Переделать с квада на два треугла - это фактически непосильная проблема, что уж говорить.
Цитата (warzes) Затем я открываю супербиблию 4 редакции и смотрю, фиксированному конвееру - посвящено 500 страниц. А затем всего лишь сто страниц тому как это надо делать на шейдерах. Ты говоришь что фиксированный легче шейдерного? А что тогда пятьсот страниц там изучают? А сколько человек потратит время на изучение того что было выкинуто? Ну, там лишнее есть конечно, но это нужно фильтровать. В основном всякие glLight, glMaterial, glFog, там еще аццкие текстурные комбайнеры и прочее. Оно то особо и не надо - так почитать для общего развития. Я по себе скажу, когда начинал изучать OGL - знал, что есть такие шейдеры и что на них делаются современные эффекты, поэтому я сразу пропускал вышеперечисленные вещи. А многое там весьма полезно было почитать. А фиксированный легче для понимания (тут уж кому как) - не нужно сразу лезть в дебри. Больше по этому поводу писать сил уже нет.
Вообщем ладно, писать уже надоело одно и то же . Доказывать и спорить можно вечно. Мнения сильно разные и каждый, само собой, имеет право на свое, но в целом оно остается чисто субъективным. Поэтому просто просьба - когда оно высказывается, писать хотя бы "имхо", а не представлять это так, что это уже общеизвестный и доказанный факт.
P.S. Автор, ты тут напиши, когда выбор сделаешь - интересно . А то мы тут такую дискуссию развели, наверное запутали в конец.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 18 Февраля 2013, 09:55 | Сообщение # 292 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (falcoware) Unigine бегают по всему миру как с писанной торбой, ища лохов. Одногородники кстати. Прикольно, не работали с ними? Все там так плохо? Много говорили, что на их движке нет нормальных игровых проектов (раньше читал где-то на западных форумах как пару раз отказывались от Unigine'a в пользу UDK / UE) и это их основная проблема, почему нет - не совсем понятно. Но в любой случае движок сейчас выдает весьма недурную картинку (Valley например, из последнего) и думается в скором времени пробьются таки. Но блин - 10 лет уже пилят
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Понедельник, 18 Февраля 2013, 09:55 |
|
| |
Archido | Дата: Понедельник, 18 Февраля 2013, 09:33 | Сообщение # 293 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (warzes) DX 11 (и аналогично OGL 3) намного проще DX 9 (OGL 2) в изучении Да что ты говоришь. Ну-ка просвяти, что там изменилось в 3-ей версии ОГЛа, что стало аж НАМНОГО проще.
Цитата (warzes) Не, ну если вам нравится выводить на экран треугольники, можете взять и OGL 1.0/ DX 8.0. А это то тут причем? Если так смотреть, то ты со своими поделками даже трети уровня DX9 / OpenGL 2.0 не реализовал, все укладывается в их возможности, всякие 11-тые нафиг там не нужны. То что там для тебя что-то проще - это только лично твое субъективное мнение, не надо выносить сюда это как данное.
И повторюсь: на всем современном "мобильном" железе сейчас во всю используется именно 2.0 версия OpenGL. На рынок этот зайти проще, чем делать убийцу CryEngine (для примера смотреть Unigine - сколько лет уже пилят, а вменяемый профит только недавно начал появляться), поэтому в этом случае про DX вообще сразу нужно забыть, а в изучении 3-го OpenGL'a пока нет смысла.
warzes, хотя можешь считать, что я тебе ничего и не писал - все равно твердолобо будешь спорить и спорить, настаивая на своем. Хоть кто-нить другой прочитает - задумается
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Воскресенье, 17 Февраля 2013, 17:07 | Сообщение # 294 | Тема: Мощный ноут в пределах 700$ |
Сэнсэй
Сейчас нет на сайте
| Цитата (vicu2010) Дизайн: люблю красивые ноутбуки Толщина: чем тоньше тем лучше Производительность: главный критерий. Чтобы тянул Батлу 3 и прочие новомодные Вот что-что, а "тонкий ноутбук" и "мощный ноутбук" вещи взаимоисключающие. Мощные компоненты как правило горячие, поэтому их нужно неплохо охлаждать... А где в тонком ноуте может располагаться нормальная система охлаждения? . Обычно такие горячие нотбуки сильно шумят и корпус хорошо нагревается, а когда совсем все плохо - врубается троттлинг, благодаря чему частота процессора сваливается ниже гигагерца и все начинает жутко тормозить. Ну и как правило, если цена небольшая - есть вероятность, что на той же СО сэконимили чутка
В итоге особо долго не поиграешь, но не все такие ессно. Поэтому когда модель присмотришь - почитай обзоры, отзывы на форумах, чтобы избежать вышеперечисленных проблем.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Суббота, 16 Февраля 2013, 04:18 | Сообщение # 295 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (Deswing) Так и не понял почему его наотрез запрещают новичкам учить Ну, не запрещают таки , а обычно лишь рекомендуют. Но и в большей степени это касается тех, кто создает темы вроде "какой язык учить". Кто в состоянии сам ответить на этот вопрос - сам делает свой выбор и у многих получается нормально разобраться с плюсами, но большая часть таки обычно фейлит. Я это явление воочию наблюдал, когда поступил на первый курс в ВУЗ.
Так что если быстро разобрался и умеешь на плюсах без труда выполнять алгоритмические задачи - можешь считать, что ты крут
Цитата (Deswing) Ребят, я конечно понимаю тут у вас своя атмосфера (дискуссии), но... Всё-таки, что учить? Странно видеть этот вопрос. Наша "атмосфера" тут как раз и показывает, что у нас совершенно разные взгляды и опыт, связанные с одними и теми же вещами. Каждый прошел своим путем и получил собственный опыт. И тебе придется сделать тоже самое. Я еще в первом своем посте писал, что явно указать идеальный "путь" не выйдет, ибо нет такого.
Смотри код \ уроки \ статьи \ читай что пишут на форумах и делай свой выбор. Не понравится или не получится разобраться в одном, попробуешь другое и вероятно все получится.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Пятница, 15 Февраля 2013, 13:00 | Сообщение # 296 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (warzes) Обрати внимание - это на чистом DX9 и С++, никаких движков и прочего мусора. И это при том что я не такой уж хороший программист Это все хорошо, но от чего то не видно более ли менее сложных проектов или демок. На С++, конечно, можно начинать и многие так и делают, но... Часто это путь наибольшего сопротивления, ибо часто вместо изучения непосредственно программирования новички борятся с подводными камнями ЯП и пытаются вкурить что такое указатель, потом портят память, ну и все в таком духе, ООП тоже сразу не нужен и к слову, у OpenGL в этом преимущество - объектов нет, классов нет... просто ф-ции дергать и усе. Красота. Но это все лирика, ибо каждому свое.
Цитата (warzes) Вот именно поэтому и советую начинать с новой вехи GAPI (ogl 3/dx10), потому что именно здесь нужно изучать базовые понятия - например зачем нужны матрицы и можно ли без них, тогда как в ogl 2 матрицы встроены в gapi и понимания это не добавляет Встроены, что снимает часть требуемой к изучению информации в начале обучения (не нужно копипастить где-то "непонятную" мат. либу). Смысл не изменяется - вызов 3-х ф-ций преобразования равносильны трем умножениям "реальных" матриц из мат. либы с теми же параметрами, поэтому для понимания сути преобразования геометрии с помощью матриц этого достаточно. Когда нужна будет производительность и шейдеры - тогда все заменяется на свою библиотеку, ибо это имеет реальный смысл.
Цитата (warzes) Проблема ровно в одном, gapi начинают изучать не спецы программирования, а новички, для них VBO предлагаешь изучать ты с самого начала, ибо glBegin/glEnd "уже не модно". Я лишь говорю, что когда человек все это пишущий реально понимает (а не кто-то там сказал, что "не модно"), что ему не хватает производительности - он переделывает все на VBO, попутно в нем разбираясь, ибо это опять таки имеет практический смысл. И он уже не совсем новичок к этому моменту.
Цитата (warzes) Даже треугольник с готового примера не смог вывести Во-во, а в DX11 без шейдера даже квадрата с текстурой не нарисовать. Зачем все эти сложности? glbegin / glend творит чудеса 3D можно делать и без шейдеров и без всяких VBO/VAO или FBO, разбираясь в базовых основах. Можно разобраться с Z-Buffer'ом и узнать (внезапно), например, что такое z-fighting и его побороть. Потестить блендинг и разобраться как ему правильно работать вместе с Z, потом грузить модели, делать простые ландшафты и так далее. Шейдеры и VBO не нужны вообще. Да и перед всем этим нужно 2д успеть хорошенько поделать.
Цитата (warzes) Взял DX 11 (а документации тогда, да и сейчас, по нему почти не было)... и внезапно все стало ложится на свои места, то что я не понимал раньше оказалось таким элементарным и простым Дада, взял DX11 и сразу понял как правильно нужно прозрачную геометрию рисовать (подружить Blend и Depth)... К слову во всех GAPI "дружба" их ни чем не отличается. Если знаешь как - сделаешь везде.
Цитата (warzes) И после всех этих glBegin/glEnd внезапно понимаешь, что ровным счетом ты нифига еще не знаешь, и хотя у тебя появилось понимание об трехмерной графике (которое я вообще не понимаю как может быть непонятным), ты все равно не понимаешь как же вывести модель на экран, как вывести сто моделей на экран, как их анимировать, как организовать сцену и загрузить модели с жесткого диска чтобы оно не тупило, как сделать чтобы все сверкало и отражало, как показать стеклянную бутылку и почему это так зверски сложно со всеми этими earlyZ сортировками, ведь бутылка такая простая, а еще хочется теней, крутого освещения. Да, все это не имеет никакого отношения к GAPI, и чем раньше об этом поймет новичок, тем быстрее он будет обучаться Это уже совершенно другой уровень - ты хочешь всего и сразу, а так не бывает. Все изучается всегда постепенно, шаг за шагом. И если новичок начнет сразу лезь в дебри - у него будет только больше вопросов и непонимания, ну и соответственно больше копипаста и тем на форуме: "сделал Normal mapping, но ниче не работает. Посмотрите шейдер и помогите, ибо он не мой"
Цитата (warzes) Но затем я рискнул поковырять OGL 3.3 и тут я понял, что все то что я делал на DX 11 делается хоть и немного сложнее, но почти также на OGL 3.3. И знаешь, я до сих пор не смогу вывести ничего сложнее треугольника на ogl 2, но зато я сдел за пару часов такое на dx 11 Есть много мнений о том что 2 и 3-й OpenGL принципиально ничем не отличаются. Ну API чуток другое да, кое-что по другому делать, но а в целом все тоже самое. Так, что даже и не знаю чего ты там родить во втором не можешь.
Я могу тоже скрин нарисовать, древняя работа - Delphi + OpenGL 1.5. Шейдеров нет, но есть VBO. Ландшафт с Chunk Lod'ами и мультислоями с текстурами, модели, катающийся поезд, лесок, небо, туман и т.п. Вот оно:
Цитата (warzes) И при этом не надо думать что все это взято с неба. Я через все это прошел. Я тоже через все это прошел, не ты один такой . Только я шел совсем другим путем и никаких проблем с OpenGL не испытывал.
Добавлено (15.02.2013, 13:00) --------------------------------------------- Да, еще кое-чего добавлю, отойдя от темы "что проще для новичка". Мы сейчас имеем довольно бурно развивающийся и перспективный рынок мобильных девайсов, где балом правит в данный момент именно OpenGL 2.0 (ЕS, кастрированный немнога), что обуславливает его преимущество перед DX. Написать свой движок под мобильники и тем более устроиться на работу в подобную контору куда более реально, чем в "большой" геймдев. У нас таких "больших" компаний и нет то в принципе
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Пятница, 15 Февраля 2013, 13:00 |
|
| |
Archido | Дата: Пятница, 15 Февраля 2013, 07:30 | Сообщение # 297 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Цитата (Deswing) хорошо, допустим выбрал опенГЛ. Что учить, чтобы игру сделать? Игру так просто сходу и не сделаешь. Сначала нужно непосредственно разобраться в самом OpenGL и уметь с помощью него легко рисовать хотя бы спрайты в 2д, понимая при этом как их перемещать / поворачивать и т.п. Там есть еще много нюансов, но начинать нужно с простого. Потом уже на основе полученных знаний делается некое далекое подобие движка, после чего уже можно делать игру.
Начинать изучать OpenGL часто советуют с уроков Nehe (чем они кстати напугали?) - считай это практикой, самые первые не особо сложные, а далее большая часть их особо и не нужна. В качестве подспорья в теории можно использовать ранее довольно популярную OpenGL RedBook, там разжевано довольно таки много базовых вещей. Все что касается там "встроенного" освещения и материалов (тумана и т.п.) - стоит просто просмотреть (для общего развития), а использовать - не стоит.
Цитата (warzes) если ты сейчас начнешь изучать ogl 2 (ну или dx 9, они равны) ты тупо потратишь в пустую время и затем опять же чуть ли не с нуля будешь изучать новые gapi. Ты не понимаешь. Это тоже самое, что предлагать новичку сразу с нуля учить С++ (С# / Java, по вкусу), говоря что-то вроде: "это же современные и наиболее используемые языки - их учить надо, а не всякое старье вроде Basic и Pascal, они ж мертвые - вы только зря время потратите".
Суть одна и та же. В случае с ЯП новичку главное не выучить супер современный язык, а получить базовые познания и вообще понять саму технику программирования, саму суть как это делается. После чего любой язык программирования становится лишь инструментом, который можно довольно быстро (при большом скиле) изменить на другой безо всяких проблем.
Аналогичная ситуация и с компьютерной графикой. Точно также тут есть базовые понятия и общие принципы, которые для любого GAPI будут всегда справедливы. И это основы, с которых и нужно начинать, не загружая себе голову ненужными пока "современными" вещами. А GAPI - точно такой же инструмент. При должных познаниях в комп. графике и наличии скила в программировании - изучение любого GAPI никакой проблемы не представляет и времени особо много не требует.
Кое-чего из основ (вдруг для кого-то не очевидно): Пространства, преобразования, вершины, треугольники, нормали, Depth и Stencil буферы, Blending и куча его вариантов, рендер полупрозрачной геометрии, Culling (смысл обхода вершин по и против часовой стрелки), текстурирование (и мульти), текс. фильтры и т.д. Можно пол дня перечислять и это сильно в кратце, нюансов в каждом из перечисленного - более чем дофига.
Вообще практически все что делается на том же Dx, делается точно также и на OpenGL, только с помощью другого API (ваш кэп) Сам способ создания или отрисовки, например геометрии / эффекта, не меняется. И GAPI - это всего лишь набор ф-ций и классов, которые изучаются гораздо быстрее изучения нового ЯПа. Тот же glBegin/glEnd вскоре заменяется на VBO за пару часов с перекурами. Проблемы не вижу в упор.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 14 Февраля 2013, 16:29 | Сообщение # 298 | Тема: Помогите встать на путь истинный для достижения цели |
Сэнсэй
Сейчас нет на сайте
| Deswing, ок, как я понял ты уже успел поработать с OpenGL? Почему бы и не продолжить? Почему решил перейти на Dx? Про литературу товарищ в целом правильно излагает о том, что нет такой книги где все от и до разжевано во всех подробностях. Где-то используется литература, где-то (почти везде ) гугл, ну и на форуме можно всегда спросить. По крупицам собираем информацию и много практикуемся, ну и со временем приходит опыт и понимание. А вот про матан товарищ приврал, математика конечного есть, но страшного слова матан там нет, только в очень особенных случаях... Но тригонометрию и линейную алгебру придется таки знать, да.
Вообще "верный путь" показать довольно таки сложно, ибо он у каждого свой . Вон выше агитируют сразу с 11-ым Dx'ом и шейдерами убиваться, ибо по-другому и не скажешь. Мой путь вообще начинался с Delphi + OpenGL , но сейчас есть возможность писать на С++ и использовать OpenGL / DirectX. Так что все зависит только от тебя самого , как и что выберешь - так и будет.
P.S. Но я бы отдал предпочтение начинать таки с OpenGL
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Четверг, 14 Февраля 2013, 16:30 |
|
| |
Archido | Дата: Четверг, 14 Февраля 2013, 08:27 | Сообщение # 299 | Тема: Это у меня проблема или с сайтом что-то не так? |
Сэнсэй
Сейчас нет на сайте
| Потверждаю.
Нод говорит: "http://gcup.ru/MenuF.js JS/Iframe.GJ троянская программа соединение прервано - изолирован". После чего создается некая дрянь wgsdgsdgdsgsd.exe в папке C:/Users/Username и просится в инет, чему успешно препятствует фаервол. Такие дела.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 11 Февраля 2013, 06:07 | Сообщение # 300 | Тема: Мультитекстуринг в LWJGL |
Сэнсэй
Сейчас нет на сайте
| Можно. Копай в сторону glVertexAttribPointer и иже с ним. Тут есть примерчик.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
|