小编Tag*_*agc的帖子

在 openGL 4 中渲染文本 - 不起作用

我一直在尝试使用 glutBitmapCharacter() 渲染文本。

到目前为止,这是我所拥有的 2D 文本渲染功能:

void drawString(int x, int y, char* string) {
int i, len;

glDisable(GL_TEXTURE);
glDisable(GL_TEXTURE_2D);
glDisable(GL_LIGHTING);

glColor3f(1.0f, 0.0f, 0.0f);
glRasterPos2i(x, y);

for (i = 0, len = strlen(string); i < len; i++) {
    glutBitmapCharacter(GLUT_BITMAP_HELVETICA_18, (int)string[i]);
}
glEnable(GL_TEXTURE);
glEnable(GL_TEXTURE_2D);
glEnable(GL_LIGHTING);
}
Run Code Online (Sandbox Code Playgroud)

在场景渲染函数中,我进行了这个调用:

drawString(0, 0, "TESTING");
Run Code Online (Sandbox Code Playgroud)

这些是唯一将显示任何文本的 x 和 y 值,在这种情况下,“TESTING”出现在屏幕中间,“TE”为红色(我想要的颜色),“STING”为黑色。

我看到的处理这个函数的所有代码都使用了早期版本的 openGL 和不推荐使用的代码,所以我不知道该怎么做。

c++ opengl glut

1
推荐指数
1
解决办法
1883
查看次数

Cython使性能最大化

我一直在尝试编写一个图形应用程序来演示大学项目的机器学习,我一直在用Python开发它.因为Python是一种非常慢的语言,所以我一直在寻找加速运行时执行的方法,并且偶然发现了Cython.我对C/C++还不是很熟悉,但我已经尽可能静态地输入了我的代码(尽管警告说这会降低可读性/灵活性;这不是我目前主要关心的问题).

但是,我并没有真正注意到这种实现方式与纯Python相比有任何重大改进,我想知道是否有人有任何关于如何加速它的建议.我会很高兴加速10倍,但我不确定这是多么逼真.

̶I̶̶h̶a̶v̶e̶n̶'̶t̶̶p̶r̶o̶f̶i̶l̶e̶d̶̶m̶y̶̶c̶o̶d̶e̶̶y̶e̶t̶我已经对我的代码进行了描述,结果链接如下.

因为它仍在进行中,所以布局不是很好,但我已经完成了一些简单的功能分组.

源代码可以在这里找到.代码中最相关的部分发布在下面.

.

迭代给定的pad的内存:

cdef findBestApproximation(int padindex):
    cdef double last_collision_x
    cdef double last_collision_y
    cdef double last_collision_i_angle
    cdef double last_collision_i_speed
    cdef double last_collision_f_angle
    cdef double last_collision_f_speed
    cdef double x_divergence
    cdef double y_divergenve
    cdef double f_angular_divergence
    cdef double divergence

    printData("FINDING APPROXIMATION FOR PAD %s...\n" % padindex)
    pad = Pads.padlist[padindex]
    memory = pad.memory
    ball = Balls.ball
    if not memory:
        approximation = getPadMidpoint(padindex)
        return approximation

    collision_data = getCollisionData()
    (last_collision_x, last_collision_y, last_collision_i_angle,
     last_collision_i_speed, last_collision_f_angle,
     last_collision_f_speed) = collision_data

    best_approx = 0 …
Run Code Online (Sandbox Code Playgroud)

c++ python cython

1
推荐指数
1
解决办法
245
查看次数

标签 统计

c++ ×2

cython ×1

glut ×1

opengl ×1

python ×1