CN110347391B - 用于汽车全液晶仪表的图像叠加显示方法 - Google Patents
用于汽车全液晶仪表的图像叠加显示方法 Download PDFInfo
- Publication number
- CN110347391B CN110347391B CN201910613398.9A CN201910613398A CN110347391B CN 110347391 B CN110347391 B CN 110347391B CN 201910613398 A CN201910613398 A CN 201910613398A CN 110347391 B CN110347391 B CN 110347391B
- Authority
- CN
- China
- Prior art keywords
- capture
- screen
- buffer
- property
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Image Generation (AREA)
Abstract
一种用于汽车全液晶仪表的图像叠加显示方法,包括一个向imx6系列微处理器输入指令的过程,芯片包括有扩展接口glTexDirectVIVMap,向微处理器输入指令的过程包括在存储器中存储指令代码的步骤、将指令代码输入到微处理器中执行的步骤。通过扩展接口glTexDirectVIVMap,以显存绑定的方式显示通过仪表软件软件产生的图像以及来自LVDS in视频线缆的远端中控娱乐设备的图像。本发明在imx6系列芯片上基于QNX操作系统,充分利用了芯片中GPU的硬件模块,采用imx6专用扩展接口,以显存绑定的方式替代不断生成新纹理的方式,优化视频数据帧拷贝的带宽开销。
Description
技术领域:
本发明涉及电学领域,尤其涉及人机交互技术,特别涉及触摸屏,具体的是一种用于汽车全液晶仪表的图像叠加显示方法。
背景技术:
现有技术中,部分汽车全液晶仪表产品需要同时显示仪表人机界面和导航地图,仪表界面一般覆盖于导航地图之上。导航地图通常运行在远端中控娱乐设备上,通过LVDSin视频线缆将导航地图帧数据传输到仪表设备。仪表软件则把LVDS in视频投射到仪表显示屏中,一般存在两种方案:
方案1)如图1所示,通过芯片Video in接口将采样到的数据帧直接拷贝到芯片一层pipeline上输出显示。这种传统Video In投屏,需要专门一个pipeline,且无法和一觉画面合并。而且仪表高低帧画面从同一个pipeline输出,效率低下。
方案2)如图2所示,通过芯片Video in接口将采样到的数据帧直接生成OpenGL ES纹理对象,通过OpenGL显示到一层pipeline上。这种方法将同时低帧Video in和仪表低帧画面合并,从pipeline1输出,仪表的高帧画面单独从pipeline0输出,降低了系统性能开销。但glTexImage2D涉及到内存到显存拷贝,性能并不是最佳。
方案1)导致Video在芯片pipeline硬件层通常有限的情况下(如imx6系列只有两层pipeline),Video in独占了一个pipeline,而仪表界面的所有UI绘制只能挤在另一个pipeline中,最终导致仪表界面(全屏渲染)的绘制帧率下降(指针旋转的平滑度下降)。
方案2)解决了方案1)的pipeline限制问题,使Video in绘制可以和仪表界面的后景(背景UI)合并在一个pipeline上输出作为低帧层,节省了系统开销,最终使得仪表界面的前景(局部区域的指针UI)可以以更高的帧率运行,并优化指针旋转的平滑度。但效果仍然不理想,video in每产生一帧就需要重新生成新的纹理,这样的内存到显存的交互开销同样造成了对整个系统的效率影响。现有技术中,以提升硬件来解决上述性能问题,比如把32bit DDR换作64bit DDR,从而增加了PCB研发和材料成本。
发明内容:
本发明的目的在于提供一种用于汽车全液晶仪表的图像叠加显示方法,所述的这种用于汽车全液晶仪表的图像叠加显示方法要解决现有技术中图像叠加显示方法不理想的技术问题。
本发明的这种用于汽车全液晶仪表的图像叠加显示方法,包括一个向微处理器输入指令的过程,所述的微处理器是属于imx6系列的芯片,所述的imx6系列的芯片均包括有扩展接口glTexDirectVIVMap,其中,所述的向微处理器输入指令的过程包括一个在存储器中存储指令代码的步骤、一个将所述的指令代码输入到微处理器中执行的步骤。
进一步的,在所述的将指令代码输入到微处理器中执行的步骤中,通过所述的扩展接口glTexDirectVIVMap,以显存绑定的方式显示通过仪表软件软件产生的图像以及来自LVDS in视频线缆的远端中控娱乐设备的图像。
进一步的,在所述的将指令代码输入到微处理器中执行的步骤包括:
1)创建一个QNX Screen上下文句柄:
screen_context_t m_capture_screen_ctx;
screen_create_context(&m_capture_screen_ctx,0);
2)使用上下文句柄创建一个窗口句柄,此窗口实际上并不显示内容但必须创建,但需要它来创建显存缓冲区,并设置其使用属性,像素格式,缓冲区大小。
screen_window_t m_capture_screen_win;
screen_create_window(&m_capture_screen_win,
m_capture_screen_ctx);
int val=SCREEN_USAGE_WRITE|SCREEN_USAGE_CAPTURE;
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_USAGE,&val);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_SIZE,size);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_BUFFER_SIZE,bsize);
3)使用窗口句柄句柄创建12个需要使用的显存缓冲区,之所以是12是希望缓存更多视频帧数据,每一个缓冲区存储一个视频帧:
int nbufs=12;
screen_create_window_buffers(m_capture_screen_win,nbufs);
分别获取12个缓冲区内存的首地址,保存在数组
“m_capture_buffer”中:
screen_get_window_property_pv(m_capture_screen_win,
SCREEN_PROPERTY_RENDER_BUFFERS,(void**)
m_capture_screen_buf);
for(i=0;i<m_capture_buffer_num;i++)
{
/*obtain the pointer of the buffers,for the capture use*/
screen_get_buffer_property_pv(m_capture_screen_buf[i],
SCREEN_PROPERTY_POINTER,&(m_capture_buffer[i]));
}
4)将m_capture_buffer保存的缓冲区地址设置作为LVDS in的缓冲区,这样LVDSin捕获的每一帧数据将顺序地存放到m_capture_buffer指向的缓冲区里,一共可以缓存12帧数据:
capture_set_property_i(m_capture_context,
CAPTURE_PROPERTY_FRAME_NBUFFERS,m_capture_buffer_num);
capture_set_property_p(m_capture_context,
CAPTURE_PROPERTY_FRAME_BUFFERS,m_capture_buffer);
5)将显示缓冲区“m_capture_buffer”和imx6芯片GPU提供的opengl扩展接口glTexDirectVIVMap进行显存和纹理对象的绑定,12个缓冲区绑定12个纹理对象,纹理对象被openg贴到长方形模型上以显示LVDS in的每一帧内容:
for(unsigned int i=0;i<12;i++)
{
glTexDirectVIVMap(GL_TEXTURE_2D,width,height,
TEX_RAW_DATA_VIV_UYVY,(GLvoid**)(&m_capture_buffer[i]),1);
}
6)启动LVDS in的帧采样,为了从当前12个缓冲区中取出一帧数据,
先获取当前更新的缓冲区索引(0~11):
m_cur_buf_idx=capture_get_frame(m_capture_context,
CAPTURE_TIMEOUT_INFINITE,0);
7)根据当前的缓冲区索引,找到之前已经绑定的纹理对象ID,并刷新对应的纹理:
glBindTexture(GL_TEXTURE_2D,tex_id);
glTexDirectInvalidateVIV(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D,0);
8)使用当前纹理贴图到矩形模型表面,并渲染矩形模型,最终显示LVDS in的一帧内容到屏幕上。由于渲染过程涉及到opengl专业技术,在此不列出系列函数。
9)启动下一次LVDS in的帧采样,重复6)~8)的步骤。
本发明与已有技术相比,其效果是积极和明显的。本发明在imx6系列芯片上基于QNX操作系统,充分利用了芯片中GPU提供的硬件模块,采用imx6专用扩展接口glTexDirectVIVMap,以显存绑定的方式替代不断生成新的纹理的方式,优化视频数据帧拷贝的带宽开销。本发明将同时低帧Video in和仪表低帧画面合并,从pipeline1输出,仪表的高帧画面单独从pipeline0输出,降低了系统性能开销。而且使用了glTexDirectVIVMap方式做了显存绑定,video in一旦更新可以高效地更新到显存。
附图说明:
图1是本发明的背景技术中方案1)传统LVDS视频输入显示的示意图。
图2是本发明的背景技术中的方案2)OpenGL纹理映射方式的LVDS视频输入显示的示意图。
图3是本发明的用于汽车全液晶仪表的图像叠加显示方法(OpenGL纹理映射方式的LVDS视频输入显示)的示意图。
图4是本发明的用于汽车全液晶仪表的图像叠加显示方法的架构图。
图5是本发明的用于汽车全液晶仪表的图像叠加显示方法的实施例的效果比较图。
具体实施方式:
实施例1:
如图3和图4所示,本发明的用于汽车全液晶仪表的图像叠加显示方法,包括一个向微处理器输入指令的过程,所述的微处理器是属于imx6系列的芯片,所述的imx6系列的芯片均包括有扩展接口glTexDirectVIVMap,其中,所述的向微处理器输入指令的过程包括一个在存储器中存储指令代码的步骤、一个将所述的指令代码输入到微处理器中执行的步骤。
进一步的,在所述的将指令代码输入到微处理器中执行的步骤中,通过所述的扩展接口glTexDirectVIVMap,以显存绑定的方式显示通过仪表软件软件产生的图像以及来自LVDS in视频线缆的远端中控娱乐设备的图像。
进一步的,在所述的将指令代码输入到微处理器中执行的步骤包括:
1)创建一个QNX Screen上下文句柄:
screen_context_t m_capture_screen_ctx;
screen_create_context(&m_capture_screen_ctx,0);
2)使用上下文句柄创建一个窗口句柄,此窗口实际上并不显示内容但必须创建,但需要它来创建显存缓冲区,并设置其使用属性,像素格式,缓冲区大小。
screen_window_t m_capture_screen_win;
screen_create_window(&m_capture_screen_win,
m_capture_screen_ctx);
int val=SCREEN_USAGE_WRITE|SCREEN_USAGE_CAPTURE;
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_USAGE,&val);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_SIZE,size);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_BUFFER_SIZE,bsize);
3)使用窗口句柄句柄创建12个需要使用的显存缓冲区,之所以是12是希望缓存更多视频帧数据,一个缓冲区存储一个视频帧:
int nbufs=12;
screen_create_window_buffers(m_capture_screen_win,nbufs);
分别获取12个缓冲区内存的首地址,保存在数组
“m_capture_buffer”中:
screen_get_window_property_pv(m_capture_screen_win,
SCREEN_PROPERTY_RENDER_BUFFERS,(void**)
m_capture_screen_buf);
for(i=0;i<m_capture_buffer_num;i++)
{
/*obtain the pointer of the buffers,for the capture use*/
screen_get_buffer_property_pv(m_capture_screen_buf[i],
SCREEN_PROPERTY_POINTER,&(m_capture_buffer[i]));
}
4)将m_capture_buffer保存的缓冲区地址设置作为LVDS in的缓冲区,这样LVDSin捕获的每一帧数据将顺序地存放到m_capture_buffer指向的缓冲区里,一共可以缓存12帧数据:
capture_set_property_i(m_capture_context,
CAPTURE_PROPERTY_FRAME_NBUFFERS,m_capture_buffer_num);
capture_set_property_p(m_capture_context,
CAPTURE_PROPERTY_FRAME_BUFFERS,m_capture_buffer);
5)将显示缓冲区“m_capture_buffer”和imx6芯片GPU提供的opengl扩展接口glTexDirectVIVMap进行显存和纹理对象的绑定,12个缓冲区绑定12个纹理对象,纹理对象被openg贴到长方形模型上以显示LVDS in的每一帧内容:
for(unsigned int i=0;i<12;i++)
{
glTexDirectVIVMap(GL_TEXTURE_2D,width,height,
TEX_RAW_DATA_VIV_UYVY,(GLvoid**)(&m_capture_buffer[i]),1);
}
6)启动LVDS in的帧采样,为了从当前12个缓冲区中取出一帧数据,
先获取当前更新的缓冲区索引(0~11):
m_cur_buf_idx=capture_get_frame(m_capture_context,
CAPTURE_TIMEOUT_INFINITE,0);
7)根据当前的缓冲区索引,找到之前已经绑定的纹理对象ID,并刷新对应的纹理:
glBindTexture(GL_TEXTURE_2D,tex_id);
glTexDirectInvalidateVIV(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D,0);
8)使用当前纹理贴图到矩形模型表面,并渲染矩形模型,最终显示
LVDS in的一帧内容到屏幕上。由于渲染过程涉及到opengl专业技术,在此不列出系列函数。
9)启动下一次LVDS in的帧采样,重复6)~8)的步骤。
具体的,在实施例中,按以下步骤进行:
1.设置视频的输入源,选择LVDS输入
2.创建渲染上下文和显示窗口
3.创建video capture上下文并设置capture devices工作参数
4.使用Screen API为获取的视频帧创建screen buffer(颜色缓冲区)
5.把这个视频帧缓冲区绑定为OpenGL纹理对象,通过Imx6专用扩展接口glTexDirectViVMap技术实现,需要缓冲区的格式、尺寸、虚拟地址、物理地址作为输入参数
6.开始video capture
7.等待视频帧获取完成,然后使用OpenGL渲染到颜色缓冲区中
8.结束video capture
9.与仪表低帧率画面一起合并,输出到硬件一层Pipeline上
10.仪表高帧率画面单独输出到另一个硬件Pipeline层上
11.然后合并这两个Pipeline的画面内容并显示到屏幕上
12.销毁创建的资源和上下文
附图及代码中的标记与意义的对应关系如下:
Pipeline:硬件显示层
Display:显示屏
Video in:视频输入源
LVDS(Low Voltage Differential Signaling):低电压差分信号
LVDS in:LVDS视频输入
Qnx capture:QNX视频获取子系统
Buffer update:缓冲区更新
Qnx Screen buffer:颜色缓冲区
Cluster UI:仪表界面
screen_post_window:接口函数名
glTexImage2D:OpenGL接口函数名
glTexDirectVIVMap:OpenGL接口函数名
glTexDirectInvalidateViV:OpenGL接口函数名
GL_TEXTURE_2D:纹理对象
Video capture:视频获取
Digital instrument cluster application:数字仪表应用程序
Video Capture Component:视频获取模块
Rendering Component:渲染模块
Video Capture API:QNX Video Capture接口
Screen API:QNX Screen接口
如图5所示,本实施例的积极效果是明显的。
Claims (1)
1.一种用于汽车全液晶仪表的图像叠加显示方法,包括一个向微处理器输入指令的过程,所述的微处理器是属于imx6系列的芯片,所述的imx6系列的芯片均包括有扩展接口glTexDirectVIVMap,其特征在于:所述的向微处理器输入指令的过程包括一个在存储器中存储指令代码的步骤、一个将所述的指令代码输入到微处理器中执行的步骤;
所述的将指令代码输入到微处理器中执行的步骤中,通过所述的扩展接口glTexDirectVIVMap,以显存绑定的方式显示通过仪表软件产生的图像以及来自LVDS in视频线缆的远端中控娱乐设备的图像;
所述的将指令代码输入到微处理器中执行的步骤包括:
1)创建一个QNX Screen上下文句柄:
screen_context_t m_capture_screen_ctx;
screen_create_context(&m_capture_screen_ctx,0);
2)使用上下文句柄创建一个窗口句柄,利用所述的窗口句柄创建显存缓冲区,并设置其使用属性,像素格式,缓冲区大小;
screen_window_t m_capture_screen_win;
screen_create_window(&m_capture_screen_win,
m_capture_screen_ctx);
int val=SCREEN_USAGE_WRITE|SCREEN_USAGE_CAPTURE;
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_USAGE,&val);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_SIZE,size);
screen_set_window_property_iv(m_capture_screen_win,
SCREEN_PROPERTY_BUFFER_SIZE,bsize);
3)使用所述的窗口句柄创建12个需要使用的显存缓冲区,每一个缓冲区存储一个视频帧:
int nbufs=12;
screen_create_window_buffers(m_capture_screen_win,nbufs);
分别获取12个缓冲区内存的首地址,保存在数组“m_capture_buffer”中:
screen_get_window_property_pv(m_capture_screen_win,
SCREEN_PROPERTY_RENDER_BUFFERS,(void**)
m_capture_screen_buf);
for(i=0;i<m_capture_buffer_num;i++)
{
/*obtain the pointer of the buffers,for the capture use*/
screen_get_buffer_property_pv(m_capture_screen_buf[i],
SCREEN_PROPERTY_POINTER,&(m_capture_buffer[i]));
}
4)将m_capture_buffer保存的缓冲区地址设置作为LVDS in的缓冲区,这样LVDS in捕获的每一帧数据将顺序地存放到m_capture_buffer指向的缓冲区里,一共可以缓存12帧数据:
capture_set_property_i(m_capture_context,
CAPTURE_PROPERTY_FRAME_NBUFFERS,m_capture_buffer_num);
capture_set_property_p(m_capture_context,
CAPTURE_PROPERTY_FRAME_BUFFERS,m_capture_buffer);
5)将显示缓冲区“m_capture_buffer”和imx6芯片GPU提供的opengl扩展接口glTexDirectVIVMap进行显存和纹理对象的绑定,12个缓冲区绑定12个纹理对象,纹理对象被openg贴到长方形模型上以显示LVDSin的每一帧内容:
for(unsignedinti=0;i<12;i++)
{
glTexDirectVIVMap(GL_TEXTURE_2D,width,height,
TEX_RAW_DATA_VIV_UYVY,(GLvoid**)(&m_capture_buffer[i]),1);
}
6)启动LVDSin的帧采样,为了从当前12个缓冲区中取出一帧数据,先获取当前更新的缓冲区索引(0~11):
m_cur_buf_idx=capture_get_frame(m_capture_context,
CAPTURE_TIMEOUT_INFINITE,0);
7)根据当前的缓冲区索引,找到之前已经绑定的纹理对象ID,并刷新对应的纹理:
glBindTexture(GL_TEXTURE_2D,tex_id);
glTexDirectInvalidateVIV(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D,0);
8)使用当前纹理贴图到矩形模型表面,并渲染矩形模型,最终显示LVDS in的一帧内容到屏幕上;
9)启动下一次LVDS in的帧采样,重复6)~8)的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910613398.9A CN110347391B (zh) | 2019-07-09 | 2019-07-09 | 用于汽车全液晶仪表的图像叠加显示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910613398.9A CN110347391B (zh) | 2019-07-09 | 2019-07-09 | 用于汽车全液晶仪表的图像叠加显示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110347391A CN110347391A (zh) | 2019-10-18 |
CN110347391B true CN110347391B (zh) | 2023-03-31 |
Family
ID=68178488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910613398.9A Active CN110347391B (zh) | 2019-07-09 | 2019-07-09 | 用于汽车全液晶仪表的图像叠加显示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110347391B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI766736B (zh) * | 2021-06-24 | 2022-06-01 | 造隆股份有限公司 | 具合成外來系統影像功能之數位儀錶及其合成影像顯示方法 |
CN113872838B (zh) * | 2021-08-24 | 2024-04-05 | 爱驰汽车有限公司 | 车载控制系统及方法、视频数据及音频数据的处理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882077B (zh) * | 2010-05-19 | 2013-03-20 | 广东威创视讯科技股份有限公司 | 高效率绘制与渲染基本图形的方法及装置 |
JP2017531212A (ja) * | 2014-07-22 | 2017-10-19 | ナブディ,インコーポレーテッド | 小型ヘッドアップディスプレイシステム |
CN105302580B (zh) * | 2015-11-28 | 2019-04-23 | 武汉斗鱼网络科技有限公司 | 一种通过gpu纹理共享实现快速获取游戏图像的方法和系统 |
CN107415691B (zh) * | 2017-07-28 | 2020-11-20 | 上海仪电汽车电子系统有限公司 | 集中式车载显示控制系统 |
CN108107785A (zh) * | 2017-12-25 | 2018-06-01 | 上海仪电汽车电子系统有限公司 | 一种基于全数字图像显示屏的汽车仪表及其交互方法 |
-
2019
- 2019-07-09 CN CN201910613398.9A patent/CN110347391B/zh active Active
Non-Patent Citations (1)
Title |
---|
Michel Bourdellès等.Power consumption optimization for real-time applications: Results on a MAC application implementation.《2014 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS)》.2014,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN110347391A (zh) | 2019-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12067409B2 (en) | Streaming per-pixel transparency information using transparency-agnostic video codecs | |
JP2024505995A (ja) | 特殊効果展示方法、装置、機器および媒体 | |
CN113946402B (zh) | 基于渲染分离的云手机加速方法、系统、设备及存储介质 | |
CN110347391B (zh) | 用于汽车全液晶仪表的图像叠加显示方法 | |
CN111459501A (zh) | 基于SVG的Web组态画面存储与展示系统和方法及介质 | |
CN105516669A (zh) | 一种机载显示装置及方法 | |
CN103543923A (zh) | 控件的点击事件处理方法及系统 | |
CN103280185A (zh) | 一种基于fpga的led显示屏控制系统 | |
CN103049135A (zh) | 基于电子白板的双板拼接实现方法 | |
JP7160495B2 (ja) | 画像前処理方法、装置、電子機器及び記憶媒体 | |
CN111091497A (zh) | 一种地图的矢量线面抽稀方法、智能终端及储存介质 | |
CN102436330A (zh) | 一种嵌入式电子白板及其实现方法 | |
CN114339045B (zh) | 图像处理系统和显示装置 | |
CN106875884B (zh) | 一种绘制单色屏幕的方法和装置及一种电子设备 | |
CN113360070B (zh) | 一种基于qt的协同绘图实现方法及处理终端 | |
CN202838922U (zh) | 一种基于fpga的平板显示驱动装置 | |
TW202322043A (zh) | 小網格著色圖譜 | |
CN114168505A (zh) | 图像dma控制器及其实现方法 | |
CN105068803A (zh) | 人机界面实现方法及装置 | |
CN218041611U (zh) | 一种基于触摸的编解码显控调度装置 | |
CN104299546A (zh) | 一种平视显示器及实现其同源的方法 | |
CN110083231B (zh) | 一种面向安卓VR一体式头显的WebGL全景显示方法 | |
US20220060708A1 (en) | Image-space function transmission | |
WO2023087827A1 (zh) | 渲染方法及装置 | |
US20070211082A1 (en) | Method and System for Volatile Construction of an Image to be Displayed on a Display System from a Plurality of Objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |