Something
parent
86dfa2637d
commit
6dfc0cc5dd
4
Makefile
4
Makefile
|
@ -14,8 +14,8 @@ SRCS += worker.c
|
||||||
|
|
||||||
OBJS := $(SRCS:.c=.o)
|
OBJS := $(SRCS:.c=.o)
|
||||||
|
|
||||||
CFLAGS += `pkg-config libglfw ftgl openal --cflags` -g
|
CFLAGS += `pkg-config freetype2 glfw3 ftgl openal opengl --cflags` -g
|
||||||
LDFLAGS += `pkg-config libglfw ftgl openal --libs` -g
|
LDFLAGS += -lm -lpthread -lSOIL `pkg-config freetype2 glfw3 ftgl openal opengl --libs`
|
||||||
|
|
||||||
lfsdash: $(OBJS)
|
lfsdash: $(OBJS)
|
||||||
$(CC) $(LDFLAGS) $(OBJS) -o $@
|
$(CC) $(LDFLAGS) $(OBJS) -o $@
|
||||||
|
|
2
gauge.c
2
gauge.c
|
@ -1,4 +1,4 @@
|
||||||
#include <GL/glfw.h>
|
#include <GLFW/glfw3.h>
|
||||||
#include <FTGL/ftgl.h>
|
#include <FTGL/ftgl.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
103
lfsdash.c
103
lfsdash.c
|
@ -1,9 +1,11 @@
|
||||||
#include <GL/glfw.h>
|
#include <GLFW/glfw3.h>
|
||||||
#include <FTGL/ftgl.h>
|
#include <FTGL/ftgl.h>
|
||||||
|
#include <SOIL/SOIL.h>
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
#include <unistd.h>
|
||||||
#include "outgauge.h"
|
#include "outgauge.h"
|
||||||
#include "cars.h"
|
#include "cars.h"
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
@ -157,16 +159,17 @@ int main(int argc, char **argv)
|
||||||
insim_init(insim_host, g_insim_port);
|
insim_init(insim_host, g_insim_port);
|
||||||
init_cars();
|
init_cars();
|
||||||
|
|
||||||
glfwInit();
|
glfwInit();
|
||||||
glfwWindowHint(GLFW_SAMPLES, 1);
|
glfwWindowHint(GLFW_SAMPLES, 1);
|
||||||
GLFWwindow *window = glfwCreateWindow(width, height, "GL LFS Dashboard", fullscreen ? glfwGetPrimaryMonitor() : NULL, NULL);
|
GLFWwindow *window = glfwCreateWindow(width, height, "GL LFS Dashboard", fullscreen ? glfwGetPrimaryMonitor() : NULL, NULL);
|
||||||
if (window == NULL)
|
if (window == NULL)
|
||||||
{
|
{
|
||||||
glfwTerminate();
|
printf("Could not create window\n");
|
||||||
return 0;
|
glfwTerminate();
|
||||||
}
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
glfwSetWindowTitle(window, "GL LFS Dashboard");
|
glfwSetWindowTitle(window, "GL LFS Dashboard");
|
||||||
|
|
||||||
audio_init();
|
audio_init();
|
||||||
|
|
||||||
|
@ -403,24 +406,27 @@ int main(int argc, char **argv)
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
pthread_create(&thread, NULL, &socket_run, NULL);
|
pthread_create(&thread, NULL, &socket_run, NULL);
|
||||||
|
|
||||||
FTGLfont *font = ftglCreateTextureFont("arialbd.ttf"); //"Arial.ttf");//"/usr/share/fonts/truetype/msttcorefonts/Arial.ttf");
|
FTGLfont *font = ftglCreateOutlineFont("/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf"); //"Arial.ttf");//"/usr/share/fonts/truetype/msttcorefonts/Arial.ttf");
|
||||||
// DS_DIGII
|
// DS_DIGII
|
||||||
if (!font)
|
if (!font) {
|
||||||
|
fprintf(stderr, "Unable to open font\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
ftglSetFontFaceSize(font, TEXT_SIZE, TEXT_SIZE);
|
ftglSetFontFaceSize(font, TEXT_SIZE, 0);
|
||||||
|
|
||||||
glGenTextures(1, s_symbols);
|
glGenTextures(1, s_symbols);
|
||||||
glBindTexture(GL_TEXTURE_2D, s_symbols[0]);
|
glBindTexture(GL_TEXTURE_2D, s_symbols[0]);
|
||||||
// glfwLoadTexture2D("symbols512.tga", GLFW_BUILD_MIPMAPS_BIT);
|
SOIL_load_OGL_texture("symbols512.png", 0, 1, SOIL_FLAG_MIPMAPS);
|
||||||
|
// glfwLoadTexture2D("symbols512.tga", GLFW_BUILD_MIPMAPS_BIT);
|
||||||
|
// glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, )
|
||||||
|
|
||||||
|
// Use trilinear interpolation for minification
|
||||||
// Use trilinear interpolation for minification
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
|
||||||
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
|
// Use bilinear interpolation for magnification
|
||||||
// Use bilinear interpolation for magnification
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);
|
||||||
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);
|
// Enable texturing
|
||||||
// Enable texturing
|
// glEnable(GL_TEXTURE_2D);
|
||||||
//glEnable(GL_TEXTURE_2D);
|
|
||||||
|
|
||||||
int s1 = FX_OFF;
|
int s1 = FX_OFF;
|
||||||
int s2 = FX_OFF;
|
int s2 = FX_OFF;
|
||||||
|
@ -558,19 +564,18 @@ int main(int argc, char **argv)
|
||||||
}*/
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
glfwGetFramebufferSize(window, &width, &height);
|
||||||
glfwGetFramebufferSize(window, &width, &height);
|
height = height > 0 ? height : 1;
|
||||||
height = height > 0 ? height : 1;
|
glViewport(0, 0, width, height);
|
||||||
glViewport(0, 0, width, height);
|
glClearColor(0.0, 0.0, 0.0, 0.0);
|
||||||
glClearColor(0.0, 0.0, 0.0, 0.0);
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
glClear(GL_COLOR_BUFFER_BIT);
|
glEnable(GL_BLEND);
|
||||||
glEnable(GL_BLEND);
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
glEnable(GL_ALPHA_TEST);
|
||||||
glEnable(GL_ALPHA_TEST);
|
glEnable(GL_LINE_SMOOTH);
|
||||||
glEnable(GL_LINE_SMOOTH);
|
glMatrixMode(GL_PROJECTION);
|
||||||
glMatrixMode(GL_PROJECTION);
|
glLoadIdentity();
|
||||||
glLoadIdentity();
|
glOrtho(0, width, 0, height, -100, 100);
|
||||||
glOrtho(0, width, 0, height, -100, 100);
|
|
||||||
|
|
||||||
// socket_run();
|
// socket_run();
|
||||||
|
|
||||||
|
@ -1038,23 +1043,23 @@ int main(int argc, char **argv)
|
||||||
glEnd();
|
glEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
glfwSwapBuffers(window);
|
glfwSwapBuffers(window);
|
||||||
glfwPollEvents();
|
glfwPollEvents();
|
||||||
|
|
||||||
// printf("%f\n", g_outgauge.speed * 2.23693629);
|
// printf("%f\n", g_outgauge.speed * 2.23693629);
|
||||||
|
|
||||||
running = !glfwGetKey(window, GLFW_KEY_ESCAPE) && glfwGetWindowAttrib( GLFW_OPENED) && !glfwGetMouseButton(1);
|
running = !glfwGetKey(window, GLFW_KEY_ESCAPE) && !glfwWindowShouldClose(window) && !glfwGetMouseButton(window, 1);
|
||||||
/*
|
/*
|
||||||
int wheel = glfwGetMouseWheel();
|
int wheel = glfwGetMouseWheel();
|
||||||
if (wheel >= 1) {
|
if (wheel >= 1) {
|
||||||
zoom = 65536.0 * wheel;
|
zoom = 65536.0 * wheel;
|
||||||
} else {
|
} else {
|
||||||
zoom = 65536 / (-wheel + 2);
|
zoom = 65536 / (-wheel + 2);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
//printf("%u %u %u\n", g_outgauge.flags, g_outgauge.dashlights, g_outgauge.showlights);
|
// printf("%u %u %u\n", g_outgauge.flags, g_outgauge.dashlights, g_outgauge.showlights);
|
||||||
|
|
||||||
usleep(100);
|
usleep(1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
s_running = 0;
|
s_running = 0;
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 140 KiB |
Loading…
Reference in New Issue