Перенос проекта WebGL в автономное приложение

#windows #cross-platform #webgl

#Windows #кросс-платформенный #webgl

Вопрос:

Для школы мне нужно создать программу, которая работает на двух платформах, я думаю использовать WebGL и просто Windows. Теперь мне было интересно, возможно ли создать приложение WebGL, а затем перенести его в Windows без особых усилий: P

Ответ №1:

Ну, например, если вы создаете программу WebGL, она автоматически работает в Windows / Mac / Linux, поэтому нет необходимости ее «переносить».

Предполагая, что это школьное задание, идея состоит в том, что вы должны закодировать его дважды, однако это была бы интересная платформа для поиска. Однако, прежде чем приступить к нему, нужно подумать о нескольких вещах:

  • Вы раньше занимались разработкой Windows? Потому что это может быть неприятным шоком для системы, если вы этого не сделали.
  • Какой язык вы собираетесь использовать? OpenGL был разработан для использования с Win32 C API, но есть доступные оболочки для .Net, если вам там удобнее, но вы найдете меньше руководств / документации.
  • Когда должно быть выполнено ваше назначение? Если вы изучаете совершенно новый API и у вас есть только день или два, чтобы сделать это, вы можете пересмотреть платформы.

Биты, которые будут больше всего отличаться между WebGL и desktop OpenGL, — это окна, ввод и управление файлами. Если это вас не пугает, тогда все должно быть в порядке. Полезным ресурсом в этом случае будут учебные пособия NeHe и LearningWebGL.

Учебные пособия NeHe представляют собой набор популярных (и довольно старых, на самом деле написанных не лучшим образом) учебных пособий по OpenGL, которые были портированы для широкого спектра платформ, но изначально были написаны для Win32.

Учебные пособия LearningWebGL — это, по сути, просто ориентированная на WebGL версия учебных пособий NeHe, так что вы сразу увидите некоторые параллели между ними, и, надеюсь, это поможет вам быстрее освоиться.

Каким бы путем вы ни пошли, удачи!

Комментарии:

1. Ну, идея в том, что мне действительно нужно закодировать его дважды, но также и то, что для выполнения этого во второй раз требуется как можно меньше времени (путем повторного использования кода, …). Я также учусь в школе разработки игр, но программирую в основном на c и c #. Конечно, будучи программистом, я хочу сделать как можно меньше работы, чтобы заставить его работать: P О да, это нужно сделать для моих экзаменов xmass, так что времени немного больше, чем 2 дня (хотя у меня много других домашних заданий). Спасибо!

2. О да, мне просто интересно, сложно ли это сделать. Но вы думаете, что это вполне возможно? Проект, который я имею в виду, не очень большой, но возможность повторного использования кода, конечно, была бы потрясающей.

3. Это вполне выполнимо, особенно если у вас есть опыт работы с C и C #. Однако я предупреждаю вас, что повторное использование вашего кода между WebGL и приложением на C будет минимальным. Вы сможете повторно использовать некоторые шейдеры и свои 3D-ресурсы, но не более того. Если назначение специально предназначено для повторного использования кода, вы можете рассмотреть другие варианты. (C против .Net на самом деле может быть довольно хорошим по этим критериям)