小编Elg*_*oog的帖子

Opengl:3D上的2d HUD

我已经看过这里发布的一些关于此事的问题,但仍然无法解决为什么我的2d HUD出现但让我的3D渲染世界消失了.

编辑:似乎2d场景正在控制整个屏幕所以我时不时地看到3D场景在2d场景中出现故障.因此即使我只渲染一个10 x 10像素的四边形,它也会渲染出来,然后将剩余的屏幕空白.

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(40.0,(GLdouble)x/(GLdouble)y,0.5,20.0);
glMatrixMode(GL_MODELVIEW);
glViewport(0,0,x,y);
glClear(GL_COLOR_BUFFER_BIT);
glLoadIdentity();
glTranslatef(0.0,-0.5,-6.0);

glPushMatrix();

..Draw some 3d stuff...

glPopMatrix();
// Start 2d
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, -1, 1);

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glColor3f(0.0f, 255.0f, 1.0f);
glBegin(GL_QUADS);
    glVertex2f(0.0, 0.0);
    glVertex2f(10.0, 0.0);
    glVertex2f(10.0, 10.0);
    glVertex2f(0.0, 10.0);
glEnd();
Run Code Online (Sandbox Code Playgroud)

然后我交换缓冲区

这是我的代码的顺序.就像它使得3d空间然后使得2d空间反过来取消了3d空间.

c++ opengl

17
推荐指数
2
解决办法
3万
查看次数

以编程方式发送悬停事件

只是悬停事件,我怎么能发送悬停事件的元素,而无需用户悬停(编程)一个简单的问题.

例:

// Send hover event
$('#myDiv').sendHoverEvent();

// What to do once hovering
$('#myDiv').hover(console.log('hovering'));
Run Code Online (Sandbox Code Playgroud)

javascript jquery

12
推荐指数
2
解决办法
1万
查看次数

在应用程序中编写控制台

我的应用程序需要在应用程序窗口中嵌入控制台,例如,在autoCAD中,控制台位于窗口底部等待命令.

在此输入图像描述

我需要在我的应用程序中使用控制台,以便我可以更改变量和其他内容,因此控制台不需要是一个完全爆炸的shell.

目前我的应用程序中有一个简单的控制台,但与终端(shell)相比,它看起来非常笨重,这就是我想要控制台的样子.

在此输入图像描述

我用控制台完成它的方式是当用户按下TAB控制台显示的键时,他们可以输入他们的命令/行; 一旦Return按下了键,就会解析它们键入的字符串并处理该命令.

我正在使用sf::Text对象在我的应用程序窗口中打印文本.总共使用了5个sf::Text对象,4个用于以前的命令/错误消息,1个用于当前命令行.当Return按下该键时,第4个sf::Text将其当前字符串更改为第3个,第3个到第2个,第2个到第1个,第1个更改为当前命令字符串,然后当前命令字符串被清除并准备再次输入.这样就有4个"历史"命令和/或错误的空间.不是最好的,但它是我能想到的最好的.当然,可以通过添加更多sf::Text对象来更改历史记录的数量.所以最后这就是我将控制台渲染到屏幕的方式

sf::RectangleShape rectangle;

rectangle.setSize(sf::Vector2f(App->getSize().x, App->getSize().y / 3));
rectangle.setPosition(0, 0);

rectangle.setFillColor(sf::Color::black);

App->draw(rectangle);   // This renders the console looking background rectangle
App->draw(CLine);   // This renders the current command line

for(int i = 4; i >= 0; --i) // This renders the history as described above, their idevidual positions are setup earlier on in the program
{
    CHistory[i].setString(CS[i]);
    App->draw(CHistory[i]);
}
Run Code Online (Sandbox Code Playgroud)

App 只是一个 …

c++ shell console sfml

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

JavaScript:"文档"和"HTML"之间的区别是什么

例:

$(document).click(function() { blah });   
// and
$('html').click(function() { blah });
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

在AMD64上推送和弹出

什么是AMD64系统的等效pushl %ecxpopl %ecx,我的结果是Error: invalid instruction suffix for 'push'我看了一下,有人提出改变ecx,rcx但刚刚导致Incorrect register '%rcx' used with 'l' suffix

谢谢你的帮助.

assembly stack x86-64

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

CSS/HTML元素格式化模板

我正在尝试找到一个显示HTML中所有元素的HTML模板,因此可以使用CSS将排版,颜色方案,边距等基本方面应用于它.然后可以将这些样式与处理给定项目布局的样式合并,然后针对任何给定问题进行一些调整.

我意识到我可以自己做,但认为其他人可能已经这样做或知道在哪里找到这样的模板.

谢谢你的帮助.

感谢David Dorward澄清我的问题

html css templates

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

使用Perlin Noise(基于Tile)生成2d地形

我一直在研究perlin噪音的应用程序,我正在研究它基本上是一个'二维侧视图'看游戏(模拟).我不完全理解perlin噪声是如何工作的,但是得到了一般的想法.

我发现这篇文章的代码是Perlin Noise,并决定在此之前给出它,我现在设置世界的方式是每个'块'有16x16的瓷砖我刚刚声明如果Y> = HEIGHT/2 make all瓷砖'坚固的'其他'空气',这样才能正常工作......但是土地非常平坦,就像你想象的那样.多数民众赞成在那里我认为perlin噪音会进来,所以我使用了上面网站上的代码,但我不确定如何将噪音转换为固体/空气瓦片.

你可以看到不太现实的地形 在此输入图像描述

我正在寻找下面的地形.应该看起来像山脉和连绵起伏的丘陵)我不担心锋利的边缘(方形) 在此输入图像描述

我不知道如何遍历tile数组以将噪声转换为上面

目前我正在迭代瓷砖阵列(2d),但正如你从第一张图片中看到的那样,它只是随机化瓷砖是否是实心的,它不会产生任何起伏的山丘或山脉.

for(int Y = 0;Y < HEIGHT;++Y) {
    for(int X = 0;X < WIDTH;++X) {
        Tile Tile;
        if(noise(X,Y) < 0) {
            Tile.Type = BLOCK;
        } else {
            Tile.Type = Air;
        }

        // Then I push the Tile on to a vector
Run Code Online (Sandbox Code Playgroud)

我还应该提到,在这个16x16'块'的右边,还有另一个需要与这个块相匹配的块,之后与下一个块相同.大块不应该是一样以前只是使它看起来像他们不是单独的块,如果是有道理的.

任何帮助是极大的赞赏!谢谢

UPDATE

我已经改变了我的柏林功能到的这个,我已实施建议什么phresnel:

    PerlinNoise *test=new PerlinNoise(0.25, 6);    //0.25 is Persistance 6 is Octaves

        float f,h;
        float seed = 804.343;

        for (int X=0; X!=MAP_WIDTH; ++X) …
Run Code Online (Sandbox Code Playgroud)

c++ perlin-noise

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

JS 中的哈希 == PHP 中的哈希

我需要使用 JS 和 PHP 进行哈希计算,但我需要它们都计算出相同的哈希值。我只是想知道最好的想法是什么。它需要安全,但它不会散列敏感数据,因此不需要大量的安全措施。

谁能给我一些例子

谢谢。

javascript php hash

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

将双打列表标准化为 -1 到 1 或 0 - 255

我有一个范围介于-1.396655to之间的双打列表,1.74707甚至可能更高或更低,无论哪种方式,我都会在规范化之前知道MinandMax值是什么。我的问题是我怎么能正常化之间的这些值-11甚至更好的是从双值转换他们的char值0255

任何帮助,将不胜感激。

double range = (double)(max - min);
value = 255 * (value - min)/range
Run Code Online (Sandbox Code Playgroud)

c++ normalization

4
推荐指数
2
解决办法
1万
查看次数

随机数,但有偏见

我如何创建一个偏差在数字范围内的随机数生成器?说我有这个:

$rnum = rand(0,200);
Run Code Online (Sandbox Code Playgroud)

所以$rnum == 3,下次$rnum == 106$rnum == 10等等...

但我宁愿偏差范围为80-120,因此更有可能在偏差范围内选择一个数字而不是它.

$rnum == 86下回$rnum == 112$rnum == 93但仍然可以$rnum == 24等等...

我以为我可以做到这一点:

if($rnum < $middle_of_bias){
    $rnum++;
}else{
    $rnum--;
}
Run Code Online (Sandbox Code Playgroud)

但是没有真正起作用,因为你可以看到,$rnum == 1在应用偏见后,它只会使它2不能使这种方法非常成功.

谢谢你的帮助.

编辑:每个人的答案都很棒.我真的很喜欢gnur的一个和Phil H我已经对rmflow的一个进行了修改,它正在按照我想要的方式工作. 感谢每一位帮助过的人!

if (rand(0, 10) > 2)
{
    $rnum = rand($low, $high);
}else{
    $rnum = rand(0, $max);
}
Run Code Online (Sandbox Code Playgroud)

php random

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