Главная Юзердоски Каталог Трекер NSFW Настройки

Gamedev

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 14 1 7
хочу движок на OpenGL + Cи Савтис # OP 11/07/23 Втр 12:09:25 885527 1
WIN202307111606[...].jpg 105Кб, 1276x716
1276x716
прив, Аноны. я собираюсь создать движок для 2D игр на OpenGL, звук будет на OpenAL, возможно использование шейдеров, которые будут написаны на OpenGL Shader Lang, ввод будет производится при помощи GLFW.
Сам движок будет состоять из нескольких частей.
- Скриптовый язык (буду использовать Python)
- - упаковщик скриптов (чтобы нельзя получить исходный код готовой игры, тип защита)
- Исполнитель скриптов (штука, которая будет считывать команды языка и выполнять их: отрисовывать что-то, управлять окном, спавнить юнитами и т.д)
- Графическая и звуковая часть (отрисовка графики, воспроизведение звуков, управление файлами, окном, сетью)
- графический интерфейс движка (модуль, который будет делаться самым последним и скорее всего будет делаться на С++ или Python)
Аноним 11/07/23 Втр 13:00:21 885537 2
>>885527 (OP)
>Скриптовый язык (буду использовать Python)
Делай на lua. Ты так двух зайцев убьёшь - и скриптовый язык, и компиляция в плюсы для типа защиты.
Но ты уже создал тред, потому вся разработка уже закончилась.
Аноним 11/07/23 Втр 13:04:03 885539 3
>>885537
вот ты засранец, взял и заруинил мне весь процесс.
я хотел взять питон, тип там есть либы, которые можно линковать и получать доступ к процессу исполнения кода. это можно юзать, штоб приплетать к этому механики движка
Аноним 11/07/23 Втр 13:42:27 885548 4
>>885539
C lua всё еще проще. Кресты могут вызывать функции из lua, а lua может вызывать функции крестов. Так что приплетать механики движка к скриптам будет очень просто. Я бы тебе советовал вообще не смотреть в сторону питона. А ещё лучше скачать какой-нибудь Stride это бывший Xenko а это бывший Paradox3D и посмотреть, как всё реализовано там. Это не запредельно сложные крайтековские или эпиковские поделия, разобраться будет проще, чтобы понять основные принципы.
Аноним 11/07/23 Втр 18:05:04 885624 5
>>885548
бля да. луа лучше, так как у меня изначально была идея прикрутить питон и чекать, то что он творит, типо специально в питоне вызывать функцию, которой нет в пространстве имен, но мой движок это перехватывал и если это имя функции, которая прописана в движке, то он её вызывал
Аноним 12/07/23 Срд 18:06:11 885815 6
>>885527 (OP)
> Ogl shader lang
Это ты так glsl обозвал?
Аноним 12/07/23 Срд 18:47:17 885832 7
Аноним 12/07/23 Срд 19:21:14 885850 8
>>885527 (OP)
Предлагаю начать с создания своего собственного языка программирования и компилятора к нему.

Потом на этом языке свою ОС напишешь...
Аноним 12/07/23 Срд 19:24:43 885851 9
Аноним 12/07/23 Срд 20:00:41 885873 10
>>885624
Не, за такие магические функции юнити до сих пор хуесосят. Плюс там же есть проблема, когда скриптов миллиард, движок перебирает все вызовы, даже если в них нет кода, из-за чего производительность идёт по пизде. Пили лучше события и подписывай скрипты на события апдейтов из движка.
Аноним 12/07/23 Срд 20:31:53 885880 11
>>885873
окич. вообще, я думал просто при запуске интерпретатора питона, просто перед исполнением скрипта, создавать функции, которые просто будут вызывать функции движка через ctypes
Аноним 12/07/23 Срд 21:28:17 885895 12
>>885539
Есть такая библиотека как pybind11. Она на с++, но 99.99% вероятность что у тебя и так С/С++ компилятор
Если я правильно понимаю ее назначение, то ты можешь зарегистрировать свои С++ методы и переменные и они будут доступны из питона.
https://pybind11.readthedocs.io/en/stable/basics.html
https://pybind11.readthedocs.io/en/stable/advanced/cast/overview.html

Другой промышленный инструмент это https://www.swig.org/tutorial.html
Там ты пишешь дескрипторы к своему Си и оно само делает байндинги под все языки на свете, включая питон.

Сам я только читал про них и не пользовался.
Аноним 13/07/23 Чтв 10:11:29 885961 13
>>885895
а чем ctypes плох? я смотрел сравнение скорости и ctypes отстает на 0.0002 секунды
Аноним 14/08/23 Пнд 16:05:04 894110 14
bump
Ответить в тред Ответить в тред

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов