SIDHARTH S Ответов: 1

Opengl с winform C++/CLR в качестве графического интерфейса


Можно ли вызвать эту функцию

int main(int argc, char **argv)
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutInitWindowSize(500, 500);
    glutInitWindowPosition(100, 100);
    glutCreateWindow("Window");
    glutDisplayFunc(display);
    glutIdleFunc(display);
    glutReshapeFunc(reshape);
    glutMotionFunc(mouseMovement); //check for mousemovement
    glutKeyboardFunc(keyboard);
    glutMainLoop();
    return 0;
}

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

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
    {
          main(); -------(Not sure of syntax)
    }


Что я уже пробовал:

попробовал объявить основную функцию в файле .h вместо .cpp, но ничего не вышло.

11917640 Member

GLUT-это простой легкий графический фреймворк для использования (и в основном обучения) OpenGL. Если вы хотите использовать OpenGL в программе пользовательского интерфейса (Windows API, C++/CLI, MFC или любой другой инструментарий пользовательского интерфейса), используйте OpenGL непосредственно без перенасыщения.

SIDHARTH S

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

1 Ответов

Рейтинг:
1

Rick York

Нет, звонить в main ниоткуда не следует. Это назначенная точка входа для программ CLI. Для графических программ в windows точкой входа является WinMain.

Это немного сбивает с толку. Как это у вас есть кнопка в окне с программой CLI?

Если вы хотите узнать, как использовать OpenGL в приложении WinForms, здесь есть несколько статей, которые описывают его. Поиск на этом сайте приводит к следующим результатам: Поиск Кодового Проекта[^]