Войти
ПрограммированиеФорумОбщее

Тема дипломной работы

Страницы: 1 2 3 Следующая »
#0
0:01, 25 фев. 2021

Учусь на 4-ом курсе, как и у всех встал вопрос, что же выбрать в качестве темы дипломной работы. Т.к. безработный, не тему связанную с работой взять не получается). Захотелось немного поэкспериментировать и написать игру в качестве диплома, довольно приемлемо знаю С/C++, сейчас пытаюсь постичь UE4. Собственно вопрос: из-за того, что времени на утверждение темы осталось немного, а unreal я так до конца еще не освоил, то что посоветуете взять? Из-за того что опыта с UE4  нет не хотелось бы замахиваться на что-то непосильное и потом за месяц до сдачи диплома понять, что я не вывожу.
P.S. Как мне сказал мой научрук, лучше всего использовать в работе либо "передовые технологи", на подобии AR, ну или что-то с математической подоплекой, чтобы это не был просто шутер и все.
P.P.S Пока что склоняюсь к рогалику и сделать упор на алгоритмы построения лабиринтов и поиск кратчайших путей.
Буду рад вашим предложениям. Спасибо.


#1
(Правка: 1:18) 1:12, 25 фев. 2021

AlexChek
> P.P.S Пока что склоняюсь к рогалику и сделать упор на алгоритмы построения
> лабиринтов и поиск кратчайших путей.
++
с минималистичной графикой на статичных спрайтах (OpenGameArt в помощь). без движков - на голом API (GLES какой-нить и/или SDL). если возьмете вместо крестов Java/C#/Python - удастся поспать побольше и заниматься непосредственно математической задачей вместо выноса себе мозга крестопроблемами (это весело, но трудоемко и сейчас скорее всего неоправдано).

#2
1:51, 25 фев. 2021

kkolyan
> если возьмете вместо крестов Java/C#/Python - удастся поспать побольше и
> заниматься непосредственно
++

> крестопроблемами (это весело, но трудоемко и сейчас скорее всего неоправданно)
Как правило, это весело только поначалу) Потом ты уже хочешь о них забыть, как о страшном сне, но, блин, не получается...

Бери SDL или что-то подобное ему + пак спрайтов из интернета. Это сэкономит кучу времени. SDL простой, если не пользовал раньше - быстро освоишься. Какой-нибудь glm для математики. Это если для плюсов.

Для Java есть LibGDX, но я в это теме не шарю и не могу ничего сказать о его сложности.

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

Еще если знаешь Rust и есть опыт на нем - тоже время сэкономит относительно плюсов. Если никогда не писал до этого на нем, то забудь ибо будешь долго осваиваться)
#3
(Правка: 2:01) 2:00, 25 фев. 2021

> Для Java есть LibGDX, но я в это теме не шарю и не могу ничего сказать о его сложности.
LibGDX простой. jMonkeyEngine тоже. мне больше нравится jMonkeyEngine (но он хуже заточен под мобилки, если что). Если готов писать на Java (зная кресты - это легко) - можно смело брать любой из них.

> Брать Python я бы не рискнул. Есть шанс получить проблемы со скоростью в сложных алгоритмах. А чтобы их решить придётся разбираться с кучей библиотек всяких - время.
пожалуй да, учитывая что автор смел в отношении C++ (значит как минимум не пугается синтаксиса и типов), то Java/C# зайдут лучше чем Python.

#4
2:09, 25 фев. 2021

Спасибо за советы, очень благодарен, но это скорее вызов себе, поэтому бессонные ночи меня не пугают, как и количество затраченного времени). Думал, что это хорошея идея (не с точки зрения написал диплом за неделю, стал на отлично и забил) заняться тем, чем давно хотел + попрактиковаться, возможно юношеский максимализм из меня прет, но хотел бы как-то ретироваться в геймдев, ну я посчитал, что это отличная возможность, чтобы дать себе пинка.
Плюс, я видимо неверно выразился, но тема с рогаликами это первое что на ум пришло. Если тезисно описать чего бы хотелось, то получается следующее:
1)Чтобы была киллер фитча для дедов в дипломной комиссии (передовые технологии или что-то имеющее в себе математическое основание (достаточно одной механики))
2)Т.к. для меня это что-то новое зариться на что-то масштабное думо глупо, но если скажем, я неверно все понимаю и в целом, что-то годное можно написать за 2-3 месяца в соло, уделяя скажем этому 4-6 (если нужно все 10) часов в день, то буду рад оказаться неправым.

Плюс ко всему у меня практически ноль опыта работы с другими языками, почти все 4 года в вузе я задрачивал С/C++ и самую малось Python.

#5
(Правка: 2:39) 2:30, 25 фев. 2021

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

насчет математической базы игры - а что вам интересно из математики? я бы, например, копал в сторону песочницы с фокусом на чем-нибудь из теории игр и экономики.

> передовые технологии
очень сильно зависит о представлении комиссии о передовых технологиях. Vulkan - довольно свежая штука. Это передовая технология?

#6
(Правка: 7:15) 7:11, 25 фев. 2021

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

например, если ты напишешь расчёт instant radiosity на GPU в реалтайме, то и приматывать ничего не придётся, потому что несмотря на то, что алгоритм старый, все понимают, что уже реализовать его на GPU и потыкать веткой — само по себе неплохое достижение (для бакалавра). если ты напишешь A*, то, ясное дело, будут вопросы. если ты просто запилишь рогалик на UE4, это, скорее всего, не прокатит, даже если с игровой точки зрения он будет годным. короче, ориентироваться нужно на интересное демо для какой-то технологии, а не на рейтинг в плеймаркете.

#7
(Правка: 7:40) 7:24, 25 фев. 2021

Suslik
> ты должен придумать что-то, представляющее какой-то научный интерес
Диплом это вообще-то не диссертация, а он не аспирант. Наука тут ни при чем. Он должен продемонстрировать способность решать технические задачи связанные с темой его обучения. Не научные, а чисто технические. Тем он докажет что его не зря учили и он может работать по специальности.  Пока неясно на кого он вообще учится и есть ли хоть какая-то связь между его специализацией и игрой которую он хочет показать в качестве доказательства своей квалификации.

#8
(Правка: 14:52) 14:49, 25 фев. 2021

По поводу научной составляющей, даже у нас в ВУЗЕ разные мнения. Кто-то говорит, что она нужна, а кто-то решил делать онлайн-магазин и их тему приняли.
По поводу специальности: факультет компьютерных технологий и информатики, кафедра информационных систем. Если кратко о специальности: достаточное количество математики (Линал, матан, теорвер, статистика дискретка, теория алгоритмов и т.д.), чуть меньше количество программирования, и ещё меньшее экономики. Были и выбивающиеся из этих категорий предметы:бд, анализ данных и т.д.. Короче скудный cumputer science.
Вот я предерживался виденья как у Suslik, но ничего годного выдумать не смог, потому и обратился на форум.
А поводу рогалика, я за него не держусь ни коем образом, просто это первое что пришло на ум, где можно прицепить научную составляющую в виде алгоритмов поисков:двусторонний Дейкстра, аргклфлаги или что-то; ну и алгоритмов генерации лабиринтов/комнат

#9
19:12, 25 фев. 2021

AlexChek
> факультет компьютерных технологий и информатики, кафедра информационных систем
Ну так и делал бы информационную систему, что-то для поиска информации или ее обработки например. Онлайн-магазин как раз хорошо подходит. Игра то тут каким боком? Боюсь комиссия будет не в восторге если вас специально не учили игры писать. Впрочем диплом все равно дадут если до защиты допустят. В деталях никто разбираться не будет, лишь бы тема была связана с профилем факультета. Я в свое время три года на кафедре проработал, насмотрелся на студенческие проекты. 90% это компиляция или полный треш. Какая там нафиг наука?

#10
19:48, 25 фев. 2021

Лично я, начал бы с тетриса.
Это достаточно просторный начальный опыт. Вывод объекта, управление объектом. Взаимодействие объектов.

Затронутся многие нужные и полезные навыки (особенно в геймдеве). В тетрисе очень много подводных камней. Он и прост и сложен одновременно.

#11
(Правка: 21:22) 21:20, 25 фев. 2021

Mirrel
> Лично я, начал бы с тетриса.
> Это достаточно просторный начальный опыт. Вывод объекта, управление объектом.
> Взаимодействие
Змейка проще. Даже скроллшутеры проще. В плане программирования я имею ввиду.

#12
22:27, 25 фев. 2021

mr.Strange, потому и советую тетрис. Что он не так прост, как кажется.

#13
(Правка: 23:44) 23:43, 25 фев. 2021

Это понятно, что  первый опыт должен быть более приземлённым, но тут же вопрос о теме диплома, а не о том, с чего нажать свой путь. Задумайся я об этом раньше, наверное так бы и поступил. Сначала бы все прощупал, а потом бы лез в эту область. Но я специально решил нырнуть в омут с головой без подготовки. Поэтому и спрашиваю у более опытных людей форума, возможно ли что-то годное сделать без опыта в этой области + возможно у кого-то то есть прикольные идеи.

#14
23:44, 25 фев. 2021

у нас обычно игровая тематика не особо хорошо заходила, потому что не всем в комисии была очевидна её прикладная ценность. однако, всегда хорошо заходят темы по рендерингу, если их протолкнуть под соусом научной визуализации или представления данных. например, если ты напишешь какой-нибудь volume renderer, его легко можно применить как к медицинским данным CT-сканнера, так и ко всякой геологии и ещё куче других тем. аналогично если ты пишешь рендер, то достаточно его применить в одной из демок к каким-нибудь околонаучным данным и у комиссии не будет вопросов. а вот тетрис я сомневаюсь, что кого-то заинтересует.

san
> Наука тут ни при чем. Он должен продемонстрировать способность решать технические задачи связанные с темой его обучения.
может быть, в разных вузах разные требования, но у нас поощрялось придумывать что-то новое и околонаучное. иначе бы все тетрисы писали.

Страницы: 1 2 3 Следующая »
ПрограммированиеФорумОбщее