HF>А что за игра? Но вот только про ИИ никогда не читал, всмысле как это реализуется, но начать никогда не поздно!
Очень близко к двухмерному волейболлу. То есть перемещения игрока сетка-стенка, прыжок, вправо-влево отсутствует. За подробностями или в мыло, или в аську.
совет тебе уже не поможет.. _>>Учи что нибудь практическое, .NET там аль MFC. HF>В том-то и проблема, что чтобы выучить что-нибудь практическое(MFC, Win32API, DirectX, OpenGL и т.п.) нужно писать какой-нибудь реальный проект, а иначе все прочитанное быстро улетучится . Наверное буду писать какую-нибудь маленькую игрушку, но вот только какую ?
Напиши что то типа AirHockey
Есть поле, есть ракетка, есть мяч.
Ракетка не может выходить больше чем за половину поля, соотвественно может бить по мячу и тыльной стороной.
Мяч должен угодить в ворота сопернику (примерно 1/4 от ширины посреди противоположных сторон.)
Стучись в аську 201299909, ещё кое что обговорить можно..
Здравствуйте, vog, Вы писали:
HF>>А что за игра? Но вот только про ИИ никогда не читал, всмысле как это реализуется, но начать никогда не поздно!
vog>Очень близко к двухмерному волейболлу. То есть перемещения игрока сетка-стенка, прыжок, вправо-влево отсутствует. За подробностями или в мыло, или в аську.
А можно мне тоже попробовать?
Здравствуйте, HiFix, Вы писали:
HF>Здравствуйте, LM, Вы писали:
LM>>Дам тебе один совет: если хочешь стать хорошим Программистом, то ты должен относится к этому делу как к искусству — дело в том, что алгоритмизировать задачу можно разными способами, что само по себе является предпосылками к творчеству.
LM>>ps: и делай всегда то, что хочешь в данный момент — если тебе не судьба быть программером, то нефиг себя заставлять; а если судьба — то тебе уже никуда не деться. HF>Просто как только я начинаю кодить, то ОЧЕНЬ на долго(часов эдак на 12) и для меня это жутко интересно. А мне просто хотелось бы закрепить уже полученные знания.
Нужно четко ставить задачу: сегодня делаю только одну задачу. И задачи, естественно, ставить реальные а не типа "Написать компилятор с С++" Это — БОЛЬШАЯ задача. Разбиваем ее на более мелкие: сканер, синтанализатор, генератор кода. Разбиваем сканер на более мелкие...
И примерно на 5-м 6-м уровне можно ставить однодневную задачу.
И НЕ ДЕЛАТЬ В ЭТОТ ЖЕ ДЕНЬ НИКАКОЙ ДРУГОЙ ЗАДАЧИ!!!!!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Здравствуйте, HiFix, Вы писали:
HF>>Здравствуйте, LM, Вы писали:
LM>>>Дам тебе один совет: если хочешь стать хорошим Программистом, то ты должен относится к этому делу как к искусству — дело в том, что алгоритмизировать задачу можно разными способами, что само по себе является предпосылками к творчеству.
LM>>>ps: и делай всегда то, что хочешь в данный момент — если тебе не судьба быть программером, то нефиг себя заставлять; а если судьба — то тебе уже никуда не деться. HF>>Просто как только я начинаю кодить, то ОЧЕНЬ на долго(часов эдак на 12) и для меня это жутко интересно. А мне просто хотелось бы закрепить уже полученные знания. LVV>Нужно четко ставить задачу: сегодня делаю только одну задачу. И задачи, естественно, ставить реальные а не типа "Написать компилятор с С++" Это — БОЛЬШАЯ задача. Разбиваем ее на более мелкие: сканер, синтанализатор, генератор кода. Разбиваем сканер на более мелкие... LVV>И примерно на 5-м 6-м уровне можно ставить однодневную задачу. LVV>И НЕ ДЕЛАТЬ В ЭТОТ ЖЕ ДЕНЬ НИКАКОЙ ДРУГОЙ ЗАДАЧИ!!!!!
Ну допустим задачей для себя я выбрал написать маленькую игру с использованием только WinAPI, а вот как ее грамотно разбить на эти самые более мелкие задачи?
Здравствуйте, HiFix, Вы писали:
HF>Здравствуйте, LaptevVV, Вы писали:
LVV>>Здравствуйте, HiFix, Вы писали:
HF>>>Здравствуйте, LM, Вы писали:
LM>>>>Дам тебе один совет: если хочешь стать хорошим Программистом, то ты должен относится к этому делу как к искусству — дело в том, что алгоритмизировать задачу можно разными способами, что само по себе является предпосылками к творчеству.
LM>>>>ps: и делай всегда то, что хочешь в данный момент — если тебе не судьба быть программером, то нефиг себя заставлять; а если судьба — то тебе уже никуда не деться. HF>>>Просто как только я начинаю кодить, то ОЧЕНЬ на долго(часов эдак на 12) и для меня это жутко интересно. А мне просто хотелось бы закрепить уже полученные знания. LVV>>Нужно четко ставить задачу: сегодня делаю только одну задачу. И задачи, естественно, ставить реальные а не типа "Написать компилятор с С++" Это — БОЛЬШАЯ задача. Разбиваем ее на более мелкие: сканер, синтанализатор, генератор кода. Разбиваем сканер на более мелкие... LVV>>И примерно на 5-м 6-м уровне можно ставить однодневную задачу. LVV>>И НЕ ДЕЛАТЬ В ЭТОТ ЖЕ ДЕНЬ НИКАКОЙ ДРУГОЙ ЗАДАЧИ!!!!! HF>Ну допустим задачей для себя я выбрал написать маленькую игру с использованием только WinAPI, а вот как ее грамотно разбить на эти самые более мелкие задачи?
Ну у тебя там сразу, походу будет три движка: движок графический , AI движок, и логика игры.
Движок графический опять разбиваешь на: прорисовку 2D обьектов, накладывание текстур, моделирование освещения.. и.т.д.
Логику тоже описываешь, допустим попали в тебя пять раз ты и проиграл, потом создаешь несколько классов для оружия, взаимодействуешь с граф. движком.
AI тоже можно разбить..
_>Ну у тебя там сразу, походу будет три движка: движок графический , AI движок, и логика игры. _>Движок графический опять разбиваешь на: прорисовку 2D обьектов, накладывание текстур, моделирование освещения.. и.т.д. _>Логику тоже описываешь, допустим попали в тебя пять раз ты и проиграл, потом создаешь несколько классов для оружия, взаимодействуешь с граф. движком. _>AI тоже можно разбить..
Это я себе довольно неплохо представляю, но я же не напишу графический движок или AI за один день ? Придется использовать еще и OpenGL, про который тоже нужно дополнительно читать . И вообще с чего надо начинать проектирование ?
HF>а вот как ее грамотно разбить на эти самые более мелкие задачи?
А вот это уже и есть — искуство программирования Каждый сам выбирает для себя алгоритмы и подходы к решению. Именно поэтому, несмотря на кучи стандартов по написания кода, не найдешь ни одной одинаковой программы. И это есть рулез.
... << RSDN@Home 1.1.3 stable >>
The darkness around me
Shores of solar sea
Oh how i wish to go down with the sun....
Здравствуйте, hermit., Вы писали:
H>Здравствуйте, HiFix, Вы писали:
HF>>а вот как ее грамотно разбить на эти самые более мелкие задачи? H>А вот это уже и есть — искуство программирования Каждый сам выбирает для себя алгоритмы и подходы к решению. Именно поэтому, несмотря на кучи стандартов по написания кода, не найдешь ни одной одинаковой программы. И это есть рулез.
Ясно. Ну ж тож, будем пробовать и учиться на горьком опыте.
Здравствуйте, HiFix, Вы писали:
HF>Здравствуйте, _chipset, Вы писали:
_>>Ну у тебя там сразу, походу будет три движка: движок графический , AI движок, и логика игры. _>>Движок графический опять разбиваешь на: прорисовку 2D обьектов, накладывание текстур, моделирование освещения.. и.т.д. _>>Логику тоже описываешь, допустим попали в тебя пять раз ты и проиграл, потом создаешь несколько классов для оружия, взаимодействуешь с граф. движком. _>>AI тоже можно разбить.. HF>Это я себе довольно неплохо представляю, но я же не напишу графический движок или AI за один день ? Придется использовать еще и OpenGL, про который тоже нужно дополнительно читать . И вообще с чего надо начинать проектирование ?
Граф. движок:
1. Загрузка текстур
2. Отрисовка 2D обьектов
3. Создание фона и чтобы обьекты просвечивали
Эт типа пример..
Про OpenGL, выдели дополнительное время на "Исследование".
... << RSDN@Home beta 3 rev. 207 писалось под звуки Наутилус Помпилиус — Последнее Письмо>>
Здравствуйте, hermit., Вы писали:
H>Здравствуйте, HiFix, Вы писали:
HF>>а вот как ее грамотно разбить на эти самые более мелкие задачи? H>А вот это уже и есть — искуство программирования Каждый сам выбирает для себя алгоритмы и подходы к решению. Именно поэтому, несмотря на кучи стандартов по написания кода, не найдешь ни одной одинаковой программы. И это есть рулез.
Вот кстати и суть программирования. Есть какое то расплывчатое, никому не понятное (компьютеру) понятие — движок. Тебе надо разделить на более подробные части, описать, втолковать по кусочкам скормить это компилеру. Уровень абстракции понижать проще говоря.
... << RSDN@Home beta 3 rev. 207 писалось под звуки Наутилус Помпилиус — Последнее Письмо>>
Здравствуйте, _chipset, Вы писали:
_>Здравствуйте, hermit., Вы писали:
H>>Здравствуйте, HiFix, Вы писали:
HF>>>а вот как ее грамотно разбить на эти самые более мелкие задачи? H>>А вот это уже и есть — искуство программирования Каждый сам выбирает для себя алгоритмы и подходы к решению. Именно поэтому, несмотря на кучи стандартов по написания кода, не найдешь ни одной одинаковой программы. И это есть рулез.
_>Вот кстати и суть программирования. Есть какое то расплывчатое, никому не понятное (компьютеру) понятие — движок. Тебе надо разделить на более подробные части, описать, втолковать по кусочкам скормить это компилеру. Уровень абстракции понижать проще говоря.
Поскольку на часах уже около 4:07 AM продолжу бреди.. философствовать..
По сути есть две ключевых линии программирования: понижения уровня абстракции обьектов и алгоритмов.
Следуя теории ООП всё есть обьекты. Сама программа это обьект. Алгоритмы же представляют собой набор команд который может как на низком уровне абстракции так и на высоком. Давно всех задолбавший пример: вскипятить (блин, сколько же раз этот проклятый чайник уже кипятили) чайник.
Это высокий уровень абстракции. Взять чайник, поставить его на плитку, включить плитку на полную мощность это уже пониже уровень абстракции.
Сократить мышцу в правой руке, повернуть плечевой сустав, сокращать мышцы всех пальцев чтобы схватить чайник это уже гораздо ниже уровень абстракции.
Так получаются алгоритмы.
Вторая линия программирования: обьекты.
Собственно необходимо доводить обьекты до такого уровня абстракции который требуется.
Допустим для нашего примера необходимо разделить руку на: кость, мышцы, жилы, вены поскольку необходимо что то сокращать..
Короче суть в том что для искусства программирования необходимо умело понижать и повышать уровни абстракций как обьектов так и алгоритмов. Тот кто умеет это делать тот и есть программист!
Здравствуйте, HiFix, Вы писали:
K>>Я бы на твоём месте налегал бы на алгоритмы, например возьми и прочитай про различные методы сортировки(метод вставок, пузырёк, метод Шелла, Хоара). K>>Попробуй реализовать их. HF>Это уже пройденный этап.
Всё так и должно быть — ни один нормальный программер не запоминает всё о тех технологиях, которые он когда-либо использовал. Запоминай только общие подходы и ключевые слова для поиска в MSDN-е
Здравствуйте, HiFix, Вы писали:
HF>Здравствуйте, Porno God, Вы писали:
PG>>Попробуй написать игрушку. Сам всегда хотел, да руки никогда не доходили HF>Пробовал летом. Что-то нечто гонок (аля денди ) на WinAPI (GDI), да только после того как было сделано 2/3 работы , КТО-ТО стер все файлы
Здравствуйте, DuШes, Вы писали:
DШ>Здравствуйте, HiFix, Вы писали:
HF>>Здравствуйте, Porno God, Вы писали:
PG>>>Попробуй написать игрушку. Сам всегда хотел, да руки никогда не доходили HF>>Пробовал летом. Что-то нечто гонок (аля денди ) на WinAPI (GDI), да только после того как было сделано 2/3 работы , КТО-ТО стер все файлы
DШ>похоже...это ты заснул на клавише DEL...
Стерлась не только папка My Projects , но и еще гигабайт 10!
Здравствуйте, HiFix, Вы писали:
HF>Здравствуйте, DuШes, Вы писали:
DШ>>Здравствуйте, HiFix, Вы писали:
HF>>>Здравствуйте, Porno God, Вы писали:
PG>>>>Попробуй написать игрушку. Сам всегда хотел, да руки никогда не доходили HF>>>Пробовал летом. Что-то нечто гонок (аля денди ) на WinAPI (GDI), да только после того как было сделано 2/3 работы , КТО-ТО стер все файлы
DШ>>похоже...это ты заснул на клавише DEL... HF>Стерлась не только папка My Projects , но и еще гигабайт 10!
тады ойййййй....
Здравствуйте, HiFix, Вы писали:
HF>Хочу на программиста в Волгоградский Государственный Техничечкий Университет , учусь вроде нормально.
О! Рядом совсем! Сходи на кафедру САПР, посмотри. K>>Ну и не забывай про спорт и девочек HF>Это я никогда не забывал
Хочешь быть счастливым — будь им!
Без булдырабыз!!!