1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/takamachimarisa-CocosQtPort

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md
CocosQtPort
===========

Это код для портирования Cocos2d-x3.3 на QT5.3.
Он полезен для кодирования редактора игр.

Как использовать?
1. Скопируйте директорию CocoQtPort в вашу папку Classes.
2. Измените AppDelegate, чтобы он наследовал форму cocos2d::CCQApplication. Добавьте члена, например:

class AppDelegate : private cocos2d::CCQApplication { public: AppDelegate(int argc, char *argv[]) : cocos2d::CCQApplication(argc, argv) {}; virtual ~AppDelegate(); ...... protected: CCGEditor _mainWindow; // CCGEditor — это класс MainWindow, который вы создали в QT. }

3. Измените AppDelegate::applicationDidFinishLaunching(), используйте CCQGLView для создания glview. например:

bool AppDelegate::applicationDidFinishLaunching() { // инициализируем director auto director = Director::getInstance(); auto glview = CCQGLView::getInstance(); glview->setBgColor(Color4B(50, 50, 50, 255));

director->setOpenGLView(glview);
_mainWindow.setGLView(glview->getGLWidget());
_mainWindow.show();

...... }

4. Измените ваш класс QT MainWindow (здесь CCGEditor):
CCGEditor.h

class CCGEditor : public QMainWindow { Q_OBJECT

public: CCGEditor(QWidget *parent = 0); ~CCGEditor() {}

void setGLView(QWidget *glWidget);

protected: void closeEvent(QCloseEvent *);

private: Ui::CCGEditorClass ui; AppDelegate *_appDelegate; QWidget *_glWidget; };

CCGEditor.cpp

CCGEditor::CCGEditor(QWidget *parent) : QMainWindow(parent), _appDelegate(NULL), _glWidget(NULL) { ui.setupUi(this); }

void CCGEditor::closeEvent(QCloseEvent *) { cocos2d::Director::getInstance()->end(); qApp->quit(); }

void CCGEditor::setGLView(QWidget *glWidget) { _glWidget = glWidget;

if (_glWidget)
{
    ui.SceneWidget->setWidget(_glWidget);
    setCentralWidget(ui.SceneWidget);
}

}

5. Измените основную функцию следующим образом:

int main(int argc, char *argv[]) { AppDelegate app(argc, argv); return cocos2d::CCQApplication::getInstance()->run(); }

6. Не забудьте заголовочные файлы_(:зゝ∠)_

Смотрите мой блог для подробностей:
http://www.cnblogs.com/marisa/p/4141862.html

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Порт cocos2d-x 3.3 на QT5.3 Расширить Свернуть
LGPL-2.1
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/takamachimarisa-CocosQtPort.git
git@gitlife.ru:oschina-mirror/takamachimarisa-CocosQtPort.git
oschina-mirror
takamachimarisa-CocosQtPort
takamachimarisa-CocosQtPort
master