Форум программистов, компьютерный форум, киберфорум
Программирование игр
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 03.11.2018
Сообщений: 2

Стоит ли учить Си для создания 2D игр?

04.01.2019, 16:15. Показов 2122. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Так стоит ли? Или лучше будет перейти на C#? И есть какие-либо движки для Си?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.01.2019, 16:15
Ответы с готовыми решениями:

Стоит ли учить Java для разработки Gui?
Стоит ли учить Java для разработки Gui???

Что учить для создания сайта на HTML?
всем привет. я знаю чуть-чуть HTML5 и CSS3. учу JS. подскажите, что нужно ещё учить? без чего вообще никак не обойтись при...

Стоит ли учить английский язык для карьерного роста в программировании?
Добрый день,я начинающий разработчик.Английский язык не особо.Хотел спросить у опытных разработчиков -как важен в дальнейшей(если расти)...

14
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
09.01.2019, 19:00
If you want to make games without game engines you can learn OpenGL (WebGL) and GLSL. In that case does not matter what language you will choose: C, C++, C#, Java, Python, JavaScript, TypeScript and so on. You can study how to make your own little game engine for differect planforms.

But if you want to use a game engine you need to choose one. For example, if you choose Unreal Engine 4 you will study two languages: Blueprint and C++. If you choose CryEngine you can use: Flow Graph, Lua, C++, C#.

Цитата Сообщение от Wirsak Посмотреть сообщение
И есть какие-либо движки для Си?
I did not hear about game engines with C scripting.

Цитата Сообщение от Wirsak Посмотреть сообщение
Или лучше будет перейти на C#?
Unity or Godot. With Unity we have a big community on our forum: https://www.cyberforum.ru/unity/

Добавлено через 13 минут
Цитата Сообщение от Wirsak Посмотреть сообщение
И есть какие-либо движки для Си?
CSFML. But it is not a game engine. It has a lower level abstraction then a game engine. And it has not additional instruments that a game engine has. I think CSFML has a small community.

You can search game engines with C scripting, but I think it is better for you to start with Unity or start to study OpenGL/WebGL/GLSL with making simple games like: pong, snake, arkanoid, tanks and so on. I would start with JavaScript and WebGL because it is more simple that C++ and OpenGL, or you can start with C# + OpenGL/OpenTK, or LWJGL3/Java.
1
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
13.02.2019, 16:57
Цитата Сообщение от 8Observer8 Посмотреть сообщение
I did not hear about game engines with C scripting.
QuakeC ?

Цитата Сообщение от Wirsak Посмотреть сообщение
Стоит ли учить Си
Это первое что я советую учить после школьного паскаля.
1
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
13.02.2019, 17:12
Цитата Сообщение от outoftime Посмотреть сообщение
QuakeC ?
But QuakeC is not a game engine with scripting in the pure C language. QuakeC is a programming language for Quake Game Engine.

I found example of Quakec language

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
float vlen(vector v) = #12;
entity nextent(entity e) = #47;
.string classname;
.vector origin;
// ...
entity findchain(.string fld, string match)
{
    entity first, prev;
    first = prev = world;
    for(entity e = world; (e = nextent(e)); e++) {
        if (e.fld == match) {
            e.chain = world;
            if (prev) {
                prev.chain = e;
            } else {
                first = e;
            }
            prev = e;
        }
    }
    return first;
}
0
 Аватар для fanway
49 / 56 / 2
Регистрация: 08.02.2019
Сообщений: 103
14.02.2019, 13:36
outoftime, В школа толком ничему не учат щас. Так как все плевали на "умных" людей.
0
8 / 8 / 1
Регистрация: 01.04.2016
Сообщений: 622
14.02.2019, 14:17
есть движки для си. те, которые вы напишите сами. то же касается и любых других языков.
0
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
14.02.2019, 18:53
Цитата Сообщение от Wirsak Посмотреть сообщение
Или лучше будет перейти на C#?
My opinion that it is the best to start learning C# because you can study any popular game engine that use C# as a scripting language: Unity, Godot, CryEngine and so on. I like Unity because it is the most popular game engine. It is not difficult to find jobs in Unity in game industry.

But it is very important to study how to write shaders and how use linear algebra for games. You can to write your own simple game engines in C# and OpenGL. Unity uses HLSL and this shader language is very similar to GLSL (shader language in OpenGL). It is very good book: 2010 - 06 - C# Game Programming: For Serious Game Creation. Source Code:9781435455566.zip (121 MB)

Добавлено через 1 минуту
P.S. Learn English. English is very important for GameDev (and not only for GameDev)
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
15.02.2019, 03:53

Не по теме:

Цитата Сообщение от fanway Посмотреть сообщение
В школа толком ничему не учат щас. Так как все плевали на "умных" людей.
Когда вы перестанете ныть о том как всё плохо, увидите сколько вы можете сделать самостоятельно.



Добавлено через 6 минут
Цитата Сообщение от 8Observer8 Посмотреть сообщение
P.S. Learn English. English is very important for GameDev (and not only for GameDev)
Технический английский до смешного прост. Достаточно просто начать читать книги по С++ в оригинале чтобы сразу познакомиться с большей частью терминологии ещё в университете.

Если мы говорим о чём-то, помимо написания кода, здесь действительно понадобятся обширные знания английского языка, так как рано или поздно придется общаться с другими людьми.
0
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
15.02.2019, 04:05
Цитата Сообщение от outoftime Посмотреть сообщение
Достаточно просто начать читать книги по С++ в оригинале чтобы сразу познакомиться с большей частью терминологии ещё в университете.
And listen only English video lectures about: linear algebra, shader math, game physics and so on.

Цитата Сообщение от outoftime Посмотреть сообщение
Если мы говорим о чём-то, помимо написания кода, здесь действительно понадобятся обширные знания английского языка, так как рано или поздно придется общаться с другими людьми.
It is fun to learn programming of games through communication with people who do not know Russian. I like gamedev.net website for looking up of friends.
0
15.02.2019, 04:28

Не по теме:

Цитата Сообщение от 8Observer8 Посмотреть сообщение
I like gamedev.net website for looking up of friends.
Вот только они тебе не друзья. Да и значение слова "друг" ты уже не знаешь. Точнее ты его запятнал грязной, чужеродной примесью.

Горько смотреть на толпы молодых людей которые с открытым ртом бегут учить английский язык толком не выучив родного. Ты это и сам поймешь, со временем. (для справки, у языка есть культурная составляющая помимо банальной передачи информации)

0
15.02.2019, 05:05

Не по теме:

Цитата Сообщение от outoftime Посмотреть сообщение
Вот только они тебе не друзья. Да и значение слова "друг" ты уже не знаешь. Точнее ты его запятнал грязной, чужеродной примесью.
My best friends are good people and good learning materials (books, tutorials, lectures and so on) that was created by good people. If I can help somebody it gives me positive emotions and motivation. A man is my friend if I like him and if he likes me. All good people are comrades for me.

Цитата Сообщение от outoftime Посмотреть сообщение
Горько смотреть на толпы молодых людей которые с открытым ртом бегут учить английский язык толком не выучив родного. Ты это и сам поймешь, со временем. (для справки, у языка есть культурная составляющая помимо банальной передачи информации)
I cannot study Russian because I try to maximize English usage. I can have a progress in English only if I will use it everywhere and everytime where it is possible. Maximum of environment must be in English. My life is learning and work, work and learning. I do not have time for learning Russian culture. Sometimes I read Leo Tolstoy and Chekhov but in English only. I listen "War and Peace" instead of stupid music:
Youtube

I think it is useful practice for listening skill.

0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
15.02.2019, 05:22

Не по теме:

Цитата Сообщение от 8Observer8 Посмотреть сообщение
I like gamedev.net website for looking up of friends.
Еще раз хочу обратить ваше внимание на эту строку с точки зрения грамотности написания.

Переведём "I like gamedev.net website for ...", получим "Я люблю gamedev.net за ...". Недостающая часть предложения должна отвечать на вопрос: "за что?". Если вы не согласны, предложите ваш вариант исходя из определения Оксфордским университетом

Переводим остаток "looking up of friends". Во первых, фраза "look up" может быть в виде "looking up" только если того требуют временные правила. Исходя из определения фразы "look up", по контексту подходит "встретить".

Разберу сначала ваш вариант с использованием "present continuous". Как это будет на русском? Примерно так: "за встречание друзей". Т.е. мы продолжительное время встречаем их и встречаем, жаль встретить не можем, так как только и делаем что встречаем.

Явно что нужно использовать "present simple". Т.е. наша фраза преобразуется в "look up of friends". Далее замечу что использования связующего "of", в данном случае, - бессмысленно. В результате имеем простое "look up friends". Я бы еще немного переписал, вставив существительное в центре "look friends up", так как полагаю что "по канонам" фраза имеет вид "look someone up".

Переведем то что у нас вышло: "I like gamedev.net website for look friends up", получаем "Я люблю gamedev.net за встретить друзей". Как-то не очень грамотно звучит. Наверное пропущено ".. за возможность встретить..".

Английский: I like gamedev.net website for an ability to look friends up.
Русский: Я люблю gamedev.net за возможность повстречать друзей.



Добавлено через 9 минут

Не по теме:

Цитата Сообщение от 8Observer8 Посмотреть сообщение
A man is my friend if I like him and if he likes me.
Вот только тебе никто не обязан вытирать сопли. В российской культуре так вести себя не принято. Тут нужно чувствовать тонкую грань между обучением и издевательством. Если ты хотя-бы раз подумаешь что тебя пытались учить когда над тобой издевались.. Но самое интересное это то как изящно можно издеваться притворствуя благим намерениям. Ведь если тебе дадут по шее, по чём зря - ты резко отреагируешь. Но если тебя погладят по головке, по чём зря, ты понять не поймёшь зачем и просто пойдёшь на поводу. Ну разве это не изящно? Вообще, если тебе кажется что тебе чего-то не хватает и ты бежишь к первому встречному в надежде что у него ЭТО будет - у тебя большие проблемы в семье. Это больше ничего не говорит и ни к чему не должно побуждать помимо того чтобы разобраться с проблемами в СВОЕЙ семье.

0
15.02.2019, 07:24

Не по теме:

Цитата Сообщение от outoftime Посмотреть сообщение
Если ты хотя-бы раз подумаешь, что тебя пытались учить, когда над тобой издевались.
Цитата Сообщение от outoftime Посмотреть сообщение
Горько смотреть на толпы молодых людей, которые с открытым ртом бегут учить английский язык, толком не выучив родного.
Russian grammar requires commas.

0
0 / 0 / 0
Регистрация: 24.02.2019
Сообщений: 2
24.02.2019, 23:28
Стоит если вы тяготеете к программированию. А если именно хотите быстро сделать игрушку, лучше воспользоваться конструктором или готовым движком.
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
27.02.2019, 11:33
Цитата Сообщение от Wirsak Посмотреть сообщение
Стоит ли учить Си для создания 2D игр?
C нет, C++ да.
вы же не драйвер пишите, а игру, поэтому возможностей чистого C будет явно не достаточно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.02.2019, 11:33
Помогаю со студенческими работами здесь

Низкоуровневость в c++. Стоит или не стоит его учить?
Приветствую! Захотел выучить язык c++, но знакомый сказал, что у него есть стремление к низкоуровневости! Подскажите пожалуйста, можно...

ActionScript 3.0 для создания игр
Посоветуйте пожалуйста хорошие книги или ресурсы по даному направлению. P.S Прочитал Колина Мука, заглядываю в официальное...

Программа для создания игр
с помощью каких программ нужно писать игры?

Программа для создания игр
Какой программой лучше пользоваться что бы создать 2D игру. Помогите пожалуйста.

Пиратское ПО для создания игр...
Снова здравствуйте! На будущее хочу узнать одну вещь: если игра разрабатывается в пиратском Windows 7 в нелицензированном Visual Studio...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru