首页 文章
  • 1 votes
     answers
     views

    渲染到半尺寸的帧缓冲区,然后将其缩放以实现像素化的外观

    我即将用libGdx创建一个小型2D桌面游戏,我希望它能从像Flappy Bird这样的游戏中获得你所知道的复古像素化外观 . 为了达到这个效果,我想到了以下几点: 创建一个游戏窗口(例如640x480) 创建一半大小的帧缓冲区(即320x200) 将所有内容渲染到帧缓冲区 从帧缓冲区获取纹理 使用SpriteBatch将纹理绘制到屏幕上,将其缩放2倍并使用TextureFil...
  • 113 votes
     answers
     views

    OpenGL中Framebuffer和Renderbuffer的概念和区别是什么?

    我对Framebuffer和Renderbuffer的概念感到困惑 . 我知道他们需要渲染,但我想在使用之前了解它们 . 我知道存储临时绘图结果需要一些位图缓冲区 . 后缓冲区 . 当这些图纸正在进行时,需要在屏幕上看到另一个缓冲区 . 前缓冲区 . 翻转它们,再画一遍 . 我知道这个概念,但很难将这些对象与这个概念联系起来 . 他们的概念和差异是什么?
  • 0 votes
     answers
     views

    快速交换帧缓冲OpenGL

    我最近读到,只需切换帧缓冲对象的渲染目标比切换帧缓冲对象快得多 . 这听起来很极端,这是否意味着我应该只使用一个帧缓冲对象而只切换它的目标? 编辑:我改变'交换'到'切换'以避免混淆 . 通过切换我的意思是绑定一个新的帧缓冲区来代替旧的帧缓冲区 . 不要与用于交换前端和后端缓冲区的SwapBuffers()调用混淆 .
  • 1 votes
     answers
     views

    Qt OpenGL帧缓冲到图像

    我正在将帧缓冲区绘制成图像,它曾经工作正常,但是有些东西坏了,我不知道是什么...... 任何帮助都会很棒 . 我收到错误“QGLFramebufferObject:Framebuffer不完整,缺少附件” . 它似乎间歇性地工作 . VoxelEditor::VoxelEditor(QWidget *parent) : QGLWidget(QGLFormat(QGL::SampleBuf...
  • 0 votes
     answers
     views

    OpenGl帧缓冲性能问题

    我目前正在尝试为JAVA开发的游戏创建一个简单的照明引擎 . 我使用帧缓冲对象将光源的图像绘制到环境颜色上,并将其与先前渲染的场景组合以获得简单的光照 . 一切都运行良好,除了帧速率减半,从稳定的60 FPS到波动的30 FPS . 这是我目前的做法: (这是在我的主显示循环中完成的) int[] params1 = new int[1]; gl2.glGenTextures(1,...
  • 0 votes
     answers
     views

    OpenGL Framebuffer - 渲染到纹理

    我做了一个应用程序,在它上面渲染了天空盒和粒子 . 我想添加一些效果,我需要使用framebuffers渲染天空盒,粒子颜色,深度和位置来分离纹理 . 然后我想使用简单的着色器来使用这些纹理中的值并以适当的方式混合它们 . 我为纹理,帧缓冲区和屏幕四边形(简单的矩形渲染)编写了辅助类,但不幸的是 - 当我尝试使用它时没有任何渲染 . 当绑定帧缓冲区被注释掉时,我的场景如下所示: 修改着色器显示正...
  • 0 votes
     answers
     views

    Qt中的OpenGL FrameBuffer无法初始化

    我正在将我的应用程序从Glut移植到Qt . 但是,我无法移植我的FrameBuffer . 以下代码适用于我的Glut应用程序,但不适用于我的Qt端口 . // delete handles glDeleteFramebuffersEXT(1, fboId); glDeleteTextures(1, colorTexture); glDeleteTextures(1, depthTexture)...
  • 1 votes
     answers
     views

    OpenGL:Framebuffer,不完整的纹理附件

    我已经搜索了几个小时来解决我的问题 . 首先 . 我有HD 7800系列和GPU,最新的驱动程序 . 我正在尝试创建framebuffer类,它具有我需要的所有framebuffer函数 . 看起来我有渲染缓冲区工作,但绘制到纹理导致非常奇怪的错误 . FrameBuffer::FrameBuffer(int width, int height) { createFrameBuffer()...
  • 1 votes
     answers
     views

    帧缓冲不完整!使用OpenGL

    我克隆了以下示例: https://github.com/JoeyDeVries/LearnOpenGL/tree/master/src/5.advanced_lighting/6.hdr git clone https://github.com/JoeyDeVries/LearnOpenGL cd LearnOpenGL echo "static char const * logl_r...
  • 1 votes
     answers
     views

    opengl Framebuffer offscreen到纹理,颜色错误

    即时尝试使用帧缓冲区进行屏幕外渲染立方体 . 然后我尝试使用其纹理将其转换为纹理 . 我得到的问题是当我试图将该纹理放在一个平面上时 . 纹理颜色基于一种主要颜色是完整的:芦苇,绿色或蓝色 . 我不知道问题出在哪里,也许从浮动到双重的投射问题?我真的不知道该想什么或在哪里探索 . 这是我得到的gif . 在这个gif中你可以看到没有屏幕外渲染的普通立方体 . 第二个绿色立方体是打印在平面上的帧缓冲...
  • 1 votes
     answers
     views

    需要在Linux framebuffer中绘制光标

    我需要在没有X11的Linux下在屏幕上绘制光标(鼠标指针) . 这适用于嵌入式系统,其中所有其他绘图直接在帧缓冲区( /dev/fb0 )中发生 . 我'm currently looking at doesn'提供任何游标支持的GUI库 . 我可以自己做blitting,但我似乎能够与vsync同步( FBIO_WAITFORVSYNC ) . 我知道几乎每个图形芯片都支持硬件游标...
  • 1 votes
     answers
     views

    Android:将SurfaceTexture附加到FrameBuffer

    我正在执行需要双通道渲染的视频效果(纹理需要通过多个着色器程序传递) . 将SurfaceTexture附加到在构造函数中传递的GL_TEXTURE_EXTERNAL_OES似乎不是解决方案,因为显示的结果仅呈现一次 . 我所知道的一个解决方案是可以对FrameBuffer进行第一次渲染,然后可以将生成的纹理渲染到实际显示的位置 . 但是,似乎SurfaceTexture必须附加到GL_TEXTU...
  • 0 votes
     answers
     views

    framebuffer如何在运行kvm / arm的qemu中更新

    我按照本教程使用kvm运行qemu-system-arm: http://www.virtualopensystems.org/media/chromebook/chromebook.pdf 在阅读了一些文档(主要是博客,lkml和邮件列表存档)并浏览代码(qemu,kvm,kernel)之后,还利用内核跟踪功能来跟踪kvm事件,我可以确定vcpu线程运行访客代码直到陷阱发生,这是,主要是因为访客...
  • 2 votes
     answers
     views

    GLSL片段着色器输出类型

    假设我遇到这样的问题:现在我有一个帧缓冲区,并且纹理只包含一个颜色组件(例如,GL_RED)已经绑定到它 . 片段着色器会是什么样的?我想答案是: ...浮出ex_color; ex_color = ...; 我的问题出现了:着色器会自动检测帧缓冲区的格式并将值写入吗?如果片段着色器输出浮点值但帧缓冲格式是GL_RGBA怎么办? 那么,创建纹理的正确方法是什么只有一个组件?我从g-truc中读...
  • 0 votes
     answers
     views

    OpenGL Qt:使用framebuffers进行bloom效果的问题

    我正在关注这个tutorial的绽放效果 . 我正在使用 Qt 并且我正在尝试渲染的场景由五个立方体和五个随机放置的灯组成,类似这样 . 不幸的是,当我尝试使用framebuffers时,渲染的场景是完全空的(只有背景颜色) . 这些是代码的相关部分 . initializeGL method : void initializeGL() { initializeOpenGLFunction...
  • 1 votes
     answers
     views

    udev和usb framebuffer设备

    我想获得某个USB帧缓冲设备(DisplayLink)的固定设备名称 . 使用vendor-ID我可以使用udev规则获得匹配:SUBSYSTEM ==“usb”,ATTRS ==“17e9”,GROUP =“video” 但是使用SYMLINK =“fbdl”我没有得到/ dev / fbX设备的符号链接(X = 1,2,3 ..),但是没有得到总线/ usb / ... - 这是不一样的:...

热门问题