Skip to content

Commit dbf877b

Browse files
committed
windows build added
0 parents  commit dbf877b

File tree

2,836 files changed

+502597
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,836 files changed

+502597
-0
lines changed

Diff for: Colour.h

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#pragma once
2+
3+
#ifndef COLOUR_H
4+
#define COLOUR_H
5+
6+
7+
enum class Colour {EMPTY, BLUE, RED};
8+
9+
#endif // COLOUR_H
10+
11+
12+
13+

Diff for: Hex.pro

+166
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
QT += core gui quickwidgets
2+
3+
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
4+
5+
CONFIG += c++11
6+
7+
QT += qml quick
8+
9+
CONFIG += qmltypes
10+
QML_IMPORT_NAME = OpenGLUnderQML
11+
QML_IMPORT_MAJOR_VERSION = 1
12+
13+
14+
15+
# You can make your code fail to compile if it uses deprecated APIs.
16+
# In order to do so, uncomment the following line.
17+
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
18+
19+
SOURCES += \
20+
boardview3d.cpp \
21+
camera.cpp \
22+
connection_metadata.cpp \
23+
customdialog.cpp \
24+
ebo.cpp \
25+
graph.cpp \
26+
hexboard.cpp \
27+
hexboardmanager.cpp \
28+
hexbutton.cpp \
29+
keyreceiver.cpp \
30+
main.cpp \
31+
mainonlinewindow.cpp \
32+
mainwindow.cpp \
33+
mesh.cpp \
34+
model.cpp \
35+
mywidget.cpp \
36+
node.cpp \
37+
onlinegameboardwindow.cpp \
38+
shaderClass.cpp \
39+
squircle.cpp \
40+
stb.cpp \
41+
texture.cpp \
42+
vao.cpp \
43+
vbo.cpp \
44+
websocket_endpoint.cpp \
45+
worker.cpp \
46+
workflowmanager.cpp
47+
48+
HEADERS += \
49+
Colour.h \
50+
boardview3d.h \
51+
camera.h \
52+
connection_metadata.h \
53+
customdialog.h \
54+
ebo.h \
55+
graph.h \
56+
hexboard.h \
57+
hexboardmanager.h \
58+
hexbutton.h \
59+
keyreceiver.h \
60+
mainonlinewindow.h \
61+
mainwindow.h \
62+
mesh.h \
63+
model.h \
64+
mywidget.h \
65+
onlinegameboardwindow.h \
66+
node.h \
67+
shaderClass.h \
68+
squircle.h \
69+
stb_image.h \
70+
texture.h \
71+
vao.h \
72+
vbo.h \
73+
vertex.h \
74+
websocket_endpoint.h \
75+
worker.h \
76+
workflowmanager.h
77+
78+
FORMS += \
79+
boardview3d.ui \
80+
mainonlinewindow.ui \
81+
mainwindow.ui \
82+
onlinegameboardwindow.ui
83+
84+
# Default rules for deployment.
85+
qnx: target.path = /tmp/$${TARGET}/bin
86+
else: unix:!android: target.path = /opt/$${TARGET}/bin
87+
!isEmpty(target.path): INSTALLS += target
88+
89+
RESOURCES += \
90+
appearance.qrc \
91+
hexagon_btn.qrc \
92+
host_info.qrc \
93+
openglunderqml.qrc \
94+
shaders.qrc
95+
96+
97+
macx {
98+
99+
QMAKE_CXXFLAGS += -std=c++11
100+
QMAKE_CXXFLAGS += -stdlib=libc++
101+
QMAKE_CXXFLAGS += -I/usr/local/opt/openssl/include
102+
103+
_BOOST_PATH = /usr/local/Cellar/boost/1.76.0
104+
_ASSIMP_PATH = /usr/local/Cellar/assimp/5.0.1
105+
_BULLET_PATH = /usr/local/Cellar/bullet/3.17
106+
INCLUDEPATH += "$${_BOOST_PATH}/include/"
107+
INCLUDEPATH += "./websocketpp/"
108+
INCLUDEPATH += "./glm/"
109+
INCLUDEPATH += "./json/"
110+
INCLUDEPATH += "$${_ASSIMP_PATH}/include/"
111+
INCLUDEPATH += "$${_BULLET_PATH}/include/bullet"
112+
113+
LIBS += -L$${_BOOST_PATH}/lib
114+
LIBS += -L$${_ASSIMP_PATH}/lib
115+
LIBS += -L$${_BULLET_PATH}/lib
116+
LIBS += -L/usr/local/opt/openssl/lib
117+
LIBS += -lboost_system -lssl -lcrypto -lcurl -lassimp -lBulletDynamics -lBulletCollision -lBulletSoftBody -lLinearMath
118+
LIBS += -lz -lc++ -lSystem.B
119+
120+
}
121+
122+
unix {
123+
QT_QPA_PLATFORM=wayland
124+
125+
QMAKE_CXXFLAGS += -std=c++11
126+
QMAKE_CXXFLAGS += -static-libgcc
127+
128+
INCLUDEPATH += /usr/include/assimp
129+
INCLUDEPATH += /usr/include/bullet
130+
INCLUDEPATH += /usr/include/curl
131+
INCLUDEPATH += /usr/include/GL
132+
INCLUDEPATH += /home/loksangho/boost_1_76_0
133+
INCLUDEPATH += /home/loksangho/bullet3/src
134+
INCLUDEPATH += "./websocketpp/"
135+
INCLUDEPATH += "./glm/"
136+
INCLUDEPATH += "./json/"
137+
138+
LIBS += -L/home/loksangho/boost_1_76_0/stage/lib
139+
LIBS += -lboost_system -lcurl -lassimp -lBulletDynamics -lBulletCollision -lBulletSoftBody -lLinearMath -lGL
140+
}
141+
142+
win32 {
143+
#QMAKE_CXXFLAGS += -D_WIN32_WINNT=0x0601
144+
145+
INCLUDEPATH += "C:/Users/loksa/Documents/Hex/glm/"
146+
INCLUDEPATH += "C:/Users/loksa/Documents/Hex/websocketpp/"
147+
INCLUDEPATH += "C:/Users/loksa/Documents/Hex/json/include/nlohmann"
148+
INCLUDEPATH += "C:/msys64/mingw64/include/"
149+
INCLUDEPATH += "C:/msys64/mingw64/include/bullet/"
150+
151+
LIBS += -LC:/msys64/mingw64/lib
152+
LIBS += -llibboost_system-mt -llibboost_thread-mt -lopengl32 -lcurl -lassimp -lBulletSoftBody -lBulletDynamics -lBulletCollision -lLinearMath -lws2_32 -lwsock32
153+
#LIBS += -llibboost_system-vc142-mt-gd-x64-1_76 -llibEGL.dll -llibGLESv2.dll -llibcurl -lassimp-vc142-mt -lBulletDynamics -lBulletSoftBody -lBulletCollision -lLinearMath
154+
155+
}
156+
157+
DISTFILES += \
158+
default.frag \
159+
default.vert \
160+
light.frag \
161+
light.vert
162+
163+
164+
165+
166+

Diff for: Hex.pro.user

+321
Large diffs are not rendered by default.

Diff for: ShortcutListener.h

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#ifndef SHORTCUTLISTENER_H
2+
#define SHORTCUTLISTENER_H
3+
4+
#include <QtGui>
5+
#include <QtQml>
6+
7+
8+
class ShortcutListener : public QObject
9+
{
10+
Q_OBJECT
11+
12+
public:
13+
ShortcutListener(QObject *parent = nullptr) :
14+
QObject(parent)
15+
{
16+
}
17+
18+
Q_INVOKABLE void listenTo(QObject *object)
19+
{
20+
if (!object)
21+
return;
22+
23+
object->installEventFilter(this);
24+
}
25+
26+
bool eventFilter(QObject *object, QEvent *event) override
27+
{
28+
if (event->type() == QEvent::KeyPress) {
29+
QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event);
30+
qDebug() << "key" << keyEvent->key() << "pressed on" << object;
31+
return true;
32+
}
33+
return false;
34+
}
35+
};
36+
37+
static QObject *shortcutListenerInstance(QQmlEngine *, QJSEngine *engine)
38+
{
39+
return new ShortcutListener(engine);
40+
}
41+
42+
#endif // SHORTCUTLISTENER_H

Diff for: appearance.qrc

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<RCC>
2+
<qresource prefix="/">
3+
<file>fonts/Copperplate.ttf</file>
4+
<file>fonts/CopperplateBold.ttf</file>
5+
</qresource>
6+
</RCC>

Diff for: aqueous.cert

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIF1TCCBL2gAwIBAgIQBhPlQHhJ0zsSJZrt5Kz28jANBgkqhkiG9w0BAQsFADBG
3+
MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRUwEwYDVQQLEwxTZXJ2ZXIg
4+
Q0EgMUIxDzANBgNVBAMTBkFtYXpvbjAeFw0yMTA1MjkwMDAwMDBaFw0yMjA2Mjcy
5+
MzU5NTlaMBoxGDAWBgNVBAMMDyouaGVyb2t1YXBwLmNvbTCCASIwDQYJKoZIhvcN
6+
AQEBBQADggEPADCCAQoCggEBAJ0vqsbsP1Z9l1Nj6Ha1b6hcbmh476d3IYckcU3C
7+
KTIX2DmofM9WC6UAohH22IG11n8B6HjOEr8C1c9ZV6B+VsxGbJ5kwc0B9KERtnm+
8+
t+ejvykCwM+A/BzI/quOqxjCq0p9ODikcwzTrfaHj9tNihHsLnwP50GVy9GPL2DM
9+
49ErQy+A/0E7E0IeEinzx5rVLfAXjVIvgJkohBPKGDrAnx82aGvfH5MX2dS403pj
10+
jtsiBXNNBYBZq8kx5/4/MP01C6sWf26FndEMHmdI5ATjm/DIeUsGWm+T3dp1SvfO
11+
gXwTHFBUtuJ7/to8aM1yr9NwzY+ZUR7IhfS/1a8Kz5ktdXkCAwEAAaOCAukwggLl
12+
MB8GA1UdIwQYMBaAFFmkZgZSoHuVkjyjlAcnlnRb+T3QMB0GA1UdDgQWBBQeOKGY
13+
IAy6+v+1nPBklOOJSBHmkTAaBgNVHREEEzARgg8qLmhlcm9rdWFwcC5jb20wDgYD
14+
VR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjA7BgNV
15+
HR8ENDAyMDCgLqAshipodHRwOi8vY3JsLnNjYTFiLmFtYXpvbnRydXN0LmNvbS9z
16+
Y2ExYi5jcmwwEwYDVR0gBAwwCjAIBgZngQwBAgEwdQYIKwYBBQUHAQEEaTBnMC0G
17+
CCsGAQUFBzABhiFodHRwOi8vb2NzcC5zY2ExYi5hbWF6b250cnVzdC5jb20wNgYI
18+
KwYBBQUHMAKGKmh0dHA6Ly9jcnQuc2NhMWIuYW1hem9udHJ1c3QuY29tL3NjYTFi
19+
LmNydDAMBgNVHRMBAf8EAjAAMIIBfwYKKwYBBAHWeQIEAgSCAW8EggFrAWkAdwAp
20+
eb7wnjk5IfBWc59jpXflvld9nGAK+PlNXSZcJV3HhAAAAXm2grdrAAAEAwBIMEYC
21+
IQDqagXjdXfYQRpE5kfI4ZIMajPvyBzGcmfWT5Xv/oRsRwIhAKmKKs1UMcQv4Iuq
22+
k+EyFa/Q5bTcTc27wOqGbzYCKcDdAHYAIkVFB1lVJFaWP6Ev8fdthuAjJmOtwEt/
23+
XcaDXG7iDwIAAAF5toK3lwAABAMARzBFAiBZqC7l0x9dSJ5TGU33m+a5SnJJ7Irf
24+
p2OnLYrPQ6mQdQIhAMTIiSn58YUrtAGPlYk6+M27eOVlrfbyr9tL3dUK4F/HAHYA
25+
UaOw9f0BeZxWbbg3eI8MpHrMGyfL956IQpoN/tSLBeUAAAF5toK3vwAABAMARzBF
26+
AiAOKo/odm2ZApG9nldCKbCenSSI80qbcUMuJXzT2NGLMgIhAK1hJCxegiXOIvnp
27+
FXNvxCFOpmQRTZdB7BwWGXyrflD8MA0GCSqGSIb3DQEBCwUAA4IBAQB/B6ribW0e
28+
piCVu4ROIlg5ZZ9edVYi7hJWTE/D6G6r55BmKT0YoEoGC3P3jFLB2Kjp7RTRsWLq
29+
I3BA+Zy8O3GlFph77T/cfvr431ehZp954Z11PUYhcdhV2lt/k+dngYbqSqPhjrEd
30+
5kKXzfavRZcVyRCqc/mPPi9laaErGdUHVu16fFOKCIW1EoU77gbHbY7vU+R8eBEf
31+
mxQoCnCKlh8TSFZ+bDSUJHvsT/mHmAUiGe8HMF7uYomDgYZ3MI0x7k/Ennfdcl3J
32+
DLFEIEfXQGtXiGAIOqGOhk50iyznoR/CExY+gh3AmRfkVS6HiYC723x1FdzB3Xps
33+
8hwm4FeccLYy
34+
-----END CERTIFICATE-----

Diff for: boardview3d.cpp

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
#include "boardview3d.h"
2+
#include "ui_boardview3d.h"
3+
#include <QtQuick>
4+
#include "keyreceiver.h"
5+
#include "squircle.h"
6+
#include "customdialog.h"
7+
8+
BoardView3D::BoardView3D(QMainWindow* main_window, QWidget *parent) :
9+
QWidget(parent),
10+
ui(new Ui::BoardView3D),
11+
main_window(main_window)
12+
{
13+
ui->setupUi(this);
14+
ui->quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView);
15+
16+
int colour = 0;
17+
bool colour_checked = true;
18+
int difficulty = 0;
19+
bool difficulty_checked = true;
20+
21+
CustomDialog d("This will start a new game. Please choose your colour", this); // We want our custom dialog called "Registration".
22+
d.addLabel ("Please choose your colour below (Blue starts first) ..."); // The first element is just a text label (non interactive).
23+
d.addRadioGrp ("Colour: ", "Blue|Red", &colour, "Blue starts first, Red starts second", "Blue colour|Red colour", false, &colour_checked);
24+
d.addLabel ("Please choose your difficulty (Easy is fastest) ..."); // The first element is just a text label (non interactive).
25+
d.addRadioGrp ("Difficulty: ", "Easy|Intermediate|Hard", &difficulty, "Based on Monte Carlo AI method", "MC trials=50|MC trials=200|MC trials=1000", false, &difficulty_checked);
26+
d.exec(); // Execution stops here until user closes dialog
27+
28+
29+
30+
if(d.wasCancelled()){ // If the user hit cancel, your values stay the same
31+
main_window->setVisible(true);
32+
this->hide();
33+
} // and you probably don't need to do anything
34+
else {
35+
if(colour != -1) {
36+
//qmlRegisterSingletonType<Squircle>("OpenGLUnderQML", 1, 0, "Squircle",Squircle::squircleInstance);
37+
//Squircle testObj;
38+
qmlRegisterType<Squircle>("OpenGLUnderQML", 1, 0, "Squircle");
39+
ui->quickWidget->engine()->rootContext()->setContextProperty("test", &testObj);
40+
ui->quickWidget->setSource(QUrl("qrc:///scenegraph/openglunderqml/main.qml"));
41+
//ui->fpsLabel->setText(QString::fromStdString( testObj.fps_title));
42+
Squircle* squircle = ui->quickWidget->rootObject()->findChild<Squircle *>("squircle");
43+
squircle->init(11, colour==0?Colour::BLUE:Colour::RED, difficulty);
44+
//qmlRegisterSingletonType<ShortcutListener>("App", 1, 0, "ShortcutListener", shortcutListenerInstance);
45+
46+
//QQmlApplicationEngine engine;
47+
//engine.load(QUrl(QStringLiteral("qrc:///scenegraph/openglunderqml/main.qml")));;
48+
}
49+
}
50+
51+
52+
}
53+
54+
55+
56+
BoardView3D::~BoardView3D()
57+
{
58+
delete ui;
59+
}
60+
61+
void BoardView3D::on_pushButton_clicked()
62+
{
63+
main_window->setVisible(true);
64+
this->hide();
65+
}
66+

Diff for: boardview3d.h

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#ifndef BOARDVIEW3D_H
2+
#define BOARDVIEW3D_H
3+
4+
#include <QWidget>
5+
#include <QMainWindow>
6+
#include "squircle.h"
7+
8+
namespace Ui {
9+
class BoardView3D;
10+
}
11+
12+
class BoardView3D : public QWidget
13+
{
14+
Q_OBJECT
15+
16+
public:
17+
explicit BoardView3D(QMainWindow* main_window, QWidget *parent = nullptr);
18+
~BoardView3D();
19+
QMainWindow* main_window;
20+
21+
22+
23+
private slots:
24+
void on_pushButton_clicked();
25+
26+
private:
27+
Ui::BoardView3D *ui;
28+
Squircle testObj;
29+
};
30+
31+
#endif // BOARDVIEW3D_H

0 commit comments

Comments
 (0)