Пятница, 29 Ноября 2024, 00:24

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
ArchidoДата: Вторник, 24 Апреля 2012, 13:19 | Сообщение # 701 | Тема: casm
Сэнсэй
Сейчас нет на сайте
Quote (reyzor)
Всё делается JUST FOR FUN

В таком случае какой смысл спрашивать стоит реализовывать это или нет? Если "JUST FOR FUN" то берешь и пишешь happy , нафига спрашивать?
А если охота послушать какие-либо предложения и мнения, то неплохо было написать какие ты видишь преимущества у данного "языка" перед другими? Хотя бы.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 23 Апреля 2012, 15:51 | Сообщение # 702 | Тема: Пару логических задач для новичков)
Сэнсэй
Сейчас нет на сайте
Quote (vasua99)
потому что сигнатура смотрится по базовому классу,когда вызывается виртуальный метод,а значит и подставляется 0,а не 2.

Не по базовому, а по тому, который указан в качества типа переменной и у которой впоследствии дергаем функцию.

Поэтому писать параметры по умолчанию у виртуальных функций плохой тон (даже смысла это не имеет), а если не знаешь об этой "особенности" можно убить много часов на попытку найти в чем же все таки дело biggrin Ну, в немалых проектах конечно. По хорошему компиляторы должны выдавать хотя бы warning в таких делах, но увы smile


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Понедельник, 23 Апреля 2012, 16:08
ArchidoДата: Понедельник, 23 Апреля 2012, 11:34 | Сообщение # 703 | Тема: Вопрос-Ответ (C++)
Сэнсэй
Сейчас нет на сайте
LRESULT CALLBACK WindowProcedureMainWindow (HWND Window, UINT Message, WPARAM Frist, LPARAM Second)

...

return DefWindowProc (Window, Message, First, Second);

facepalm.jpg


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Понедельник, 23 Апреля 2012, 05:57 | Сообщение # 704 | Тема: Пару логических задач для новичков)
Сэнсэй
Сейчас нет на сайте
Quote (Йакуд)
дело в том, что четко указан тип объекта класса А. Т.к. метод является виртуальным, то реализация того или много виртуального метода будет определятся во время исполнения программы. Т.к. класс B наследуется от класса A, то мы имеем возможность создавать объекты с типом родителя, но не наоборот! Так вот, во время выполнения, программа видит, что используется объект класса A, следовательно вызывает его виртуальный метод. Вот как-то так =)

Не так, выше уже написали об этом.

Дефолтные значения параметров функций компилятор ставит на основе простого анализа кода: нашел вызов функции определенного класса (в данном случае A->p(); ) и воткнул туда "0", неявно превратив код из "my->p();" в "my->p(0);".

А вызываться всегда будет функция класса B, т.к. при конструировании объекта данного класса используется именно таблица виртуальных функций класса B (здравствуй кэп) и потому, что функция "p()" переопределена в этом классе (B) - она и будет вызвана.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Понедельник, 23 Апреля 2012, 05:59
ArchidoДата: Среда, 15 Июня 2011, 18:06 | Сообщение # 705 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (nilrem)
А зачем тогда учить делфи если далее все равно придется перейти на С++?

То, что придеться - никто не писал об этом. Если припрет - то почему бы и нет? Есть и те и другие.

Quote (nilrem)
Чем проще? Можно конкретный пример, а я поищу контрпример. По базовому синтаксису С++ проще как минимум отсутствием лишних символов, вроде :=. Это ж нада было придумать такой изврат.

":=" - это ерунда, это ж надо было к такому придраться happy

В Delphi как минимум строгая типизация, с памятью работа в разы легче и безопаснее, ага. Для новчика это все в плюсы.
В С++ можно легко нарваться, например:
Code

if (Value = 1) {}; //fail, забавный, но весьма популярный =D

...

std::string str;

void Fun(str::string StrParam) vs void Fun(const str::string &StrParam) vs void Fun(const str::string* StrParam)
//Как с ходу понять что правильнее и лучше, и в чем вообще отличия и какие могут быть последствия.
//Можно долго проодлжать и вспоминать


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Среда, 15 Июня 2011, 18:06
ArchidoДата: Среда, 15 Июня 2011, 17:21 | Сообщение # 706 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (nilrem)
Не ведись на поводу у дельфистов. Пусть приведут в пример хоть один коммерческий движок на делфи.

Однако это не повод рекомендовать начинающему изучать C++, для учебных целей Delphi более чем подходит и написать на нем можно (это будет даже проще) очень неплохие вещи. Далее никто не мешает перейти на С++ и писать убийцу крайзиса.

Quote (noTformaT)
насчет "лазарус - уг" я так и не понял

Пока довольно не стабильная IDE, компилятор там FPC.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 15 Июня 2011, 16:52 | Сообщение # 707 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (Transced)
Блин у меня нет с трафиком(((( Это что прейдется на Turbo Pascal 7.1, а где есть парочка статей о том как создавать Движки на Turbo Pascal???

Пробегись по местным ларькам с дисками, наверняка найдешь smile . А на Turbo Pascal'e много не напишешь, ищи Delphi.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 15 Июня 2011, 16:16 | Сообщение # 708 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (DungeonLord)
это ты называешь не плохим рендером?

Да, это даже очень неплохой рендер. А вообще я ожидал сравнения с CryEngine biggrin , собственно какой-то более глубокой или оригинальной аргументации глупо было ожидать, песня всегда поется одна и та же smile

А между прочем над движком LostSector'a работает всего два человека, а в силу специфики его затачивают под самое разное железо, поэтому оно даже очень шустро бегает на встроенных карточках от intel. И это Delphi. Никаких проблем.

Аксиома: Ярые защитники сишных языков, которые ничего больше не признают и утверждают нижеследующее:
Quote (DungeonLord)
Какие к черту 1-3% кто там такие тесты делал???? 40-50% не хочешь?

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

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

P.S. Здесь особо холивары не приветствуют? biggrin Ну они и правильно smile . А ведь поспорить сдержанно, не переходя на личности и оскорбления :), аргументированно, ведь иногда бывает и полезно. Конструктивный спор типа cool

Правда это почти никогда не получается happy


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 15 Июня 2011, 12:25 | Сообщение # 709 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (DungeonLord)
На Delphi серьёзный движок - это самый короткий анекдот игростроя. Просто когда я говорил, что не представляю себе двиг не на языках С, я имел ввиду серьёзный универсальный двиг с high-end рендером. Не отрицаю возможности этого, но оптимизация и производительность будет ужасная - это и так всем понятно

LostSector Video

Написано на Delphi, вполне неплохой рендер, над которым работает пара человек. Большинству такое на плюсах даже близко не дано написать, так что это все пустые высказывания. Все вполне реально.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 15 Июня 2011, 07:25 | Сообщение # 710 | Тема: Создание Движка
Сэнсэй
Сейчас нет на сайте
Quote (GC-Vic)
Для написания движка ты должен хорошо уметь создавать игры, тогда и вопросов таких не будет возникать. А если не умеешь делать игры, то зачем тебе собственный универсальный движок?

+ 1

Transced, ты еще совсем не готов smile , делать свой движок нужно начинать когда придет понимание для чего оно нужно и что ты от него хочешь, тогда подобных вопросов на форуме не будет возникать.
Для начала попробуй написать(!) небольшую 2D игрушку на не сложном движке, тогда все станет гораздо яснее.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 15 Июня 2011, 07:17 | Сообщение # 711 | Тема: Создать сокет
Сэнсэй
Сейчас нет на сайте
Линк

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Суббота, 11 Июня 2011, 16:09 | Сообщение # 712 | Тема: Как узнать директорию, где лежит .ехе файл?
Сэнсэй
Сейчас нет на сайте
Code

char Path[MAX_PATH];
GetModuleFileName(0, Path, MAX_PATH);


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 30 Марта 2011, 18:11 | Сообщение # 713 | Тема: Проблема с присваиванием.
Сэнсэй
Сейчас нет на сайте
Quote (nilrem)
А чего оно ничего не возвращает?

А оно и не должно ничего возвращать.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 30 Марта 2011, 16:29 | Сообщение # 714 | Тема: Проблема с присваиванием.
Сэнсэй
Сейчас нет на сайте
Техник
Телепаты в отпуске, давай полный листинг, хотя...

Зачем ты объявил на стеке матрицу, которая после выхода из функции просто удаляется... ?
Либо пиши в конце функции *this = _m3, либо (лучше) вообще убери _m3 из кода... Оно не надо, т.к. ты должен присваивать значения локальному классу, в котором определена эта функция.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Среда, 30 Марта 2011, 16:24 | Сообщение # 715 | Тема: Кaк сдeлaть полный экрaн?
Сэнсэй
Сейчас нет на сайте
Angevengelist
Это не FullScreen - это просто изменение разрешения.

Man-o-War
В OpenGL "FullScreen" - это просто растянутое окно на весь экран, с выключенными границами. А т.к. GLScene использует OpenGL, то ответ очевиден... поэтому GECK все правильно тебе сказал.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Вторник, 15 Марта 2011, 06:53 | Сообщение # 716 | Тема: Объясните в чем дело...
Сэнсэй
Сейчас нет на сайте
IIIypuk, Жжошь, позднее время суток сказывается? happy
Code

cin >> a_num; // "cin", а не "cit"

"if" тут вообще не причем smile

------------------

Правко: опоздал


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Вторник, 15 Марта 2011, 06:54
ArchidoДата: Понедельник, 14 Марта 2011, 16:03 | Сообщение # 717 | Тема: как вам новый OpenGL 3.3 ?
Сэнсэй
Сейчас нет на сайте
Он просто более сложен, из него выкинули весь FFP -> без шейдеров там нечего делать... Никаких там glBegin/glEnd, glPushMatrix/glPopMatrix, etc...

Тут имеется несколько полезных уроков.

Quote (Stas96)
В тех урока по которым я учился мы использовали VBO, а раньше я использовал glBegin() - glEnd();

glBegin/glEnd - это ужасти biggrin , самый медленный способ отрисовки из всех возможных.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Понедельник, 14 Марта 2011, 16:05
ArchidoДата: Воскресенье, 13 Марта 2011, 12:23 | Сообщение # 718 | Тема: Исправьте пожалуйста код для DirectX.
Сэнсэй
Сейчас нет на сайте
Morglod, В гугле забанили? wink

Тут пример с Х файлом
Тут много полезного (в том числе нужный тебе "First Person Shooter Controls")


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Пятница, 11 Марта 2011, 12:06 | Сообщение # 719 | Тема: Математика в программировании
Сэнсэй
Сейчас нет на сайте
Quote (noTformaT)
кеширование данных и работа с кластерами не требует математики?

Минимально, при чем там больше связи с шаблонными алгоритмами, которые быстро нагугливаются и подстраиваются "под себя", чтобы "норм работало". Большинство так и поступит, да и наверное правильно сделает smile

P.S. И в первом своем посте я написал практически (!), а не "вообще" не используется. Разные вещи однако.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
ArchidoДата: Пятница, 11 Марта 2011, 11:49 | Сообщение # 720 | Тема: Математика в программировании
Сэнсэй
Сейчас нет на сайте
Наверное от задач зависит. Где-то практически не нужно(БД, скажем), где-то нужно прилично (геймдев наш родной).

1) В геймдеве костяк составляют - геометрия (плоскости, расстояния, пересечения, etc) и линейная алгебра (вектора, матрицы, и все что с ними связано).
2) Чуть менее значимее - дескретная (множества, графы\деревья, частично "автоматы", etc) и вычислительная математики (интерполяция, сплайны, итерационные методы вычисления), сюда же можно приплести комбинаторику.
3) Матан, очень горячо любим всеми студентами biggrin (диффуры в основном).

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

Про (1) смысла большого нет говорить, ибо очевидно (положение в пространстве, проекции, определения столкновений, frustum culling, и еще 100500 примеров).

(2) Дискретка - часто AI (поиск пути в графе, конечные автоматы, etc), это в основном. Деревья\графы конечно (и еще некоторые вещи), много где используются, но там прослеживается большая связь со "структурами и алгоритмами", где тонны этих алгоритмов основаны на дискретке, но не являются ее в чистом виде. Т.е их (алгоритмы) вполне можно юзать и без знания дискретной математики.

(2) Выч. мат - в основном методы интерполяции. "Блендинг" анимаций например, когда одна анимация плавно "перетекает" в другую, самая настоящая интерполяция. Так же при работе с сетью, через определенный интервал приходят координаты объекта, и на основе некоторых данных (скорость, направление, прошедшая траектория) требуется плавно переместить объект из одной точки в другую.

(3) Матан не так часто используется, в основном при моделировании (физика(с нуля, без движков), графические "эффекты"). Например, очень популярная весч - "Уравнения Навье — Стокса" ("система дифференциальных уравнений в частных производных"), применяется при моделировании жидкости (эффект "текучести"). И т.д.

Это можно сказать единицы примеров, то что сейча в голову пришло smile . Программирование графики в чистом виде - это тонны математики и алгоритмов smile и никак иначе.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг