CN102929641A - 场景物件的实例化渲染 - Google Patents
场景物件的实例化渲染 Download PDFInfo
- Publication number
- CN102929641A CN102929641A CN201210446280XA CN201210446280A CN102929641A CN 102929641 A CN102929641 A CN 102929641A CN 201210446280X A CN201210446280X A CN 201210446280XA CN 201210446280 A CN201210446280 A CN 201210446280A CN 102929641 A CN102929641 A CN 102929641A
- Authority
- CN
- China
- Prior art keywords
- render
- scene
- cpu
- solid
- batch
- 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.)
- Pending
Links
Landscapes
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及计算机图形技术领域,更具体地说,涉及大量场景物件的渲染优化方法,最小化渲染状态和纹理的改变,同时,在Direct3D中使用一次方法调用,在同一批次中对同一三角形进行多次渲染。这样,就能减少CPU提交批次的时间,把CPU资源留给物理、AI等其他系统;由于最小化了CPU负载和内存占用,这种技术能高效的渲染同一几何体的大量副本,大大的降低硬件的负载,同时又不影响场景效果。
Description
技术领域
本发明涉及计算机图形技术领域,更具体地说,涉及大量场景物件的渲染优化方法。
背景技术
在交互式程序中,丰富用户体验的重要方法之一就是呈现一个充满大量各种有趣物体的世界。从数不清的草丛、树木到普通杂物:所有这些都能提高画面最终的效果。
从渲染的观点来看,实现这种效果,无非就是渲染大量小物体,一般情况下,这些物体彼此都很类似,只在颜色、位置以及朝向上有细小的差别。举个例子,比如森林中所有树的几何形状都是很类似的,而在颜色和高度上有很大差别。对用户来说,由外形各异的树组成的森林才真实,才会相信它,从而丰富自己的游戏体验。
但是,使用当前的GPU和图形库渲染大量由少量多边形组成的小物体会带来很大的性能损失。
发明内容
本发明要解决的技术问题在于,针对大量几何体渲染提供场景物件的渲染优化方法。
本发明所采用的技术方案是一种场景物件的渲染优化方法,其要步骤如下:
1)把场景中渲染的几何体实例对应的物件网格模型,作为第一个流传入;
2)把场景中物件的几何体的LocalToWorld矩阵作为第二个流传入;
3)根据几何体批次的原理,编写顶点shader程序,主要的程序代码如下:
Stuct InstanceVertex
{
D3DVECTOR3 mPosition;
//other properties……
WORD mInstanceIndex[4]; //Direct3D requires SHORT4
};
float4 worldPostion = mul(input.position, modelMatrix)。
本发明的优点在于:最小化渲染状态和纹理的改变,同时,在Direct3D中使用一次方法调用,在同一批次中对同一三角形进行多次渲染。这样,就能减少CPU提交批次的时间,把CPU资源留给物理、AI等其他系统;由于最小化了CPU负载和内存占用,这种技术能高效的渲染同一几何体的大量副本,大大的降低硬件的负载,同时又不影响场景效果。
Claims (1)
1.一种场景物件的渲染优化方法,其要步骤如下:
1)把场景中渲染的几何体实例对应的物件网格模型,作为第一个流传入;
2)把场景中物件的几何体的LocalToWorld矩阵作为第二个流传入;
3)根据几何体批次的原理,编写顶点shader程序,主要的程序代码如下:
Stuct InstanceVertex
{
D3DVECTOR3 mPosition;
//other properties……
WORD mInstanceIndex[4]; //Direct3D requires SHORT4
};
float4 worldPostion = mul(input.position, modelMatrix)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210446280XA CN102929641A (zh) | 2012-11-09 | 2012-11-09 | 场景物件的实例化渲染 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210446280XA CN102929641A (zh) | 2012-11-09 | 2012-11-09 | 场景物件的实例化渲染 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102929641A true CN102929641A (zh) | 2013-02-13 |
Family
ID=47644453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210446280XA Pending CN102929641A (zh) | 2012-11-09 | 2012-11-09 | 场景物件的实例化渲染 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102929641A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780686A (zh) * | 2015-11-20 | 2017-05-31 | 网易(杭州)网络有限公司 | 一种3d模型的合并渲染系统及方法、终端 |
-
2012
- 2012-11-09 CN CN201210446280XA patent/CN102929641A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780686A (zh) * | 2015-11-20 | 2017-05-31 | 网易(杭州)网络有限公司 | 一种3d模型的合并渲染系统及方法、终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lewis et al. | Game engines | |
US20160364906A1 (en) | Adaptive load balancing in software emulation of gpu hardware | |
US20160267705A1 (en) | System, method and device for three-dimensional modeling | |
KR20150106947A (ko) | 가시성 정보를 사용한 그래픽 데이터의 렌더링 | |
US11709713B2 (en) | System and method for multi-tenant implementation of graphics processing unit | |
WO2008151421A1 (en) | User defined characteristics for inheritance based avatar generation | |
JP7376732B2 (ja) | 領域ベースの依存関係によるカーネルの効率的なマルチgpu実行のためのシステム及び方法 | |
JP7355960B2 (ja) | レンダリング中のジオメトリ解析によるジオメトリの効率的なマルチgpuレンダリングのためのシステム及び方法 | |
CN104301795A (zh) | 基于3d模型的智能电视大数据海报信息管理方法 | |
US10719985B2 (en) | Model object building method, server, and system | |
US10824775B2 (en) | Simulation method and device for determining collision between objects | |
JP7164761B2 (ja) | グラフィック処理のためのアセット認識コンピューティングアーキテクチャ | |
JP7481557B2 (ja) | レンダリング中の領域テストによってジオメトリの効率的なマルチgpuレンダリングを行うためのシステム及び方法 | |
JP2024091921A (ja) | レンダリング前にインターリーブスクリーン領域に対して事前テストを行うことによってジオメトリの効率的なマルチgpuレンダリングを行うシステム及び方法 | |
CN102929641A (zh) | 场景物件的实例化渲染 | |
US12062126B2 (en) | Load multiple primitives per thread in a graphics pipeline | |
US11727531B2 (en) | Creating secure pipeline cache objects using differential privacy techniques | |
US20240354163A1 (en) | Distribution of time slices of a frame period for multi-tenant implementation of graphics processing unit | |
Barcellos et al. | Efetividade e revés do hiper-realismo nos games effectiveness and reverse of hyperrealism in games | |
CN116966556A (zh) | 虚拟对象的渲染方法、装置、设备、存储介质及程序产品 | |
Fransson et al. | A Comparison of Performance on WebGPU and WebGL in the Godot Game Engine | |
CN118247404A (zh) | 模型渲染方法、装置、存储介质及电子装置 | |
KR20240146509A (ko) | 시각적 객체를 표시하기 위한 전자 장치 및 방법 | |
van der Ploeg | Interactive Ray Tracing | |
CN116567274A (zh) | 直播互动方法、装置以及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130213 |