JP2016520920A5 - - Google Patents

Download PDF

Info

Publication number
JP2016520920A5
JP2016520920A5 JP2016511720A JP2016511720A JP2016520920A5 JP 2016520920 A5 JP2016520920 A5 JP 2016520920A5 JP 2016511720 A JP2016511720 A JP 2016511720A JP 2016511720 A JP2016511720 A JP 2016511720A JP 2016520920 A5 JP2016520920 A5 JP 2016520920A5
Authority
JP
Japan
Prior art keywords
instruction
bezier
curve
fan
sector
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.)
Granted
Application number
JP2016511720A
Other languages
English (en)
Other versions
JP6235123B2 (ja
JP2016520920A (ja
Filing date
Publication date
Priority claimed from US13/873,403 external-priority patent/US9401034B2/en
Application filed filed Critical
Publication of JP2016520920A publication Critical patent/JP2016520920A/ja
Publication of JP2016520920A5 publication Critical patent/JP2016520920A5/ja
Application granted granted Critical
Publication of JP6235123B2 publication Critical patent/JP6235123B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (10)

  1. コンピュータに、アンチエイリアシングされた2次元曲線をレンダリングする方法を実行させるコンピュータ・プログラムであって、前記方法は、
    シーン・データ内のオブジェクトからテッセレーションされたジオメトリック形状のセットを生成することにより、前記シーン・データを中間テッセレーションに変換するステップであって、前記ジオメトリック形状のセットは、4つの制御点及び扇形基点を有する少なくとも1つのベジェ扇形を含む、ステップと、
    記少なくとも1つのベジェ扇形の前記4つの制御点を含む最小バウンディング・ボックスの幅及び高さのうちの1つの最大値に基づいて前記少なくとも1つのベジェ扇形の曲線を定められた数の三角形に細分割することにより、前記少なくとも1つのベジェ扇形の前記曲線を近似するように、グラフィックス・パイプラインにおけるハル・シェーダを構成するための第1の命令を生成するステップであって、前記定められた数の三角形は、前記幅及び前記高さのうちの前記1つの前記最大値と、対応する細分割ファクタと、を含むルックアップ・テーブルに基づいて決定される、ステップと、
    前記少なくとも1つのベジェ扇形の前記曲線に沿った前記定められた数の三角形の各々についての頂点位置を決定するように、前記グラフィックス・パイプラインにおけるドメイン・シェーダを構成するための第2の命令を生成するステップと、
    前記中間テッセレーションを前記グラフィックス・パイプラインに送信するステップと、
    を含む、コンピュータ・プログラム
  2. 前記方法は、
    前記グラフィックス・パイプラインにおけるレンダリング・ターゲット記憶値を定めるための第3の命令を生成するステップと、
    前記グラフィックス・パイプラインにおけるラスタライザ用のサンプリング・レートを定めるための第4の命令を生成するステップであって、前記サンプリング・レートは、前記レンダリング・ターゲット記憶値から独立して定められる、ステップと、
    をさらに含む、請求項1記載のコンピュータ・プログラム
  3. 前記方法は、
    前記第1の命令、前記第2の命令、前記第3の命令、及び前記第4の命令を、グラフィックス処理装置における関数を構成するアプリケーション・プログラミング・インタフェースに送信するステップ
    をさらに含む、請求項2記載のコンピュータ・プログラム
  4. グラフィックス処理装置(GPU)上で実行されるグラフィックス・パイプラインにおいてオブジェクトの中間テッセレーションをラスタライズする方法であって、前記中間テッセレーションは、4つの制御点及び扇形基点を有する少なくとも1つのベジェ扇形を含み、前記方法は、
    コンピューティング・デバイスの中央処理装置(CPU)から、前記中間テッセレーションを受信するステップと、
    前記少なくとも1つのベジェ扇形の前記4つの制御点を含む最小バウンディング・ボックスの幅及び高さのうちの1つの最大値に基づいて前記少なくとも1つのベジェ扇形の曲線を定められた数の三角形に細分割することにより、前記少なくとも1つのベジェ扇形の前記曲線を近似するように、前記グラフィックス・パイプラインにおけるハル・シェーダを構成するための第1の命令を受信するステップと、
    前記コンピューティング・デバイスを通じて、前記第1の命令に基づいて前記ハル・シェーダを構成するステップと、
    前記少なくとも1つのベジェ扇形の前記曲線に沿った前記定められた数の三角形の各々についての頂点位置を決定するように、前記グラフィックス・パイプラインにおけるドメイン・シェーダを構成するための第2の命令を受信するステップと、
    前記コンピューティング・デバイスを通じて、前記第2の命令に基づいて前記ドメイン・シェーダを構成するステップと、
    を含む、方法。
  5. 前記ハル・シェーダが、前記少なくとも1つのベジェ扇形に対して前記第1の命令を実行するステップと、
    前記ドメイン・シェーダが、前記少なくとも1つのベジェ扇形に対して前記第2の命令を実行するステップと、
    をさらに含む、請求項記載の方法。
  6. 前記グラフィックス・パイプラインにおけるレンダリング・ターゲット記憶値を定めるための第3の命令を受信するステップと、
    前記コンピューティング・デバイスを通じて、前記レンダリング・ターゲット記憶値に対応する、前記GPUにおけるメモリの量を割り当てるステップと、
    前記グラフィックス・パイプラインにおけるラスタライザ用のサンプリング・レートを定めるための第4の命令を受信するステップであって、前記サンプリング・レートは、前記レンダリング・ターゲット記憶値から独立して定められる、ステップと、
    前記コンピューティング・デバイスを通じて、前記サンプリング・レートでシーン・データをサンプリングするように前記ラスタライザを構成するステップと、
    をさらに含む、請求項記載の方法。
  7. 前記サンプリング・レートは、前記レンダリング・ターゲット記憶値より大きい、請求項記載の方法。
  8. 前記第1の命令は、
    (A)前記ハル・シェーダが、前記少なくとも1つのベジェ扇形を2つの辺及び1つの湾曲辺を有する変形三角形として扱うことを指定するtriというドメイン命令と、
    (B)前記少なくとも1つのベジェ扇形の内部を分割するための分割命令と、
    (C)前記少なくとも1つのベジェ扇形の前記湾曲辺が三角形のセットに細分割されることを指定する出力トポロジ命令と、
    (D)前記少なくとも1つのベジェ扇形の前記分割により内部三角形が生成されないことを指定する内部テッセレーション・ファクタ命令であって、内部三角形は、前記少なくとも1つのベジェ扇形の前記曲線の境界とエッジを共有しない三角形を含む、内部テッセレーション・ファクタ命令と、
    をさらに含む、請求項記載の方法。
  9. 1以上のプロセッサと、
    グラフィックス処理装置(GPU)と、
    前記GPUを制御するためのアプリケーション・プログラム・インタフェース(API)モジュールであって、前記APIモジュールは、
    なくとも1つのベジェ扇形を定める4つの制御点を含む最小バウンディング・ボックスの幅及び高さのうちの1つの最大値に基づいて前記少なくとも1つのベジェ扇形の曲線を定められた数の三角形に細分割することにより前記少なくとも1つのベジェ扇形の前記曲線を近似するためにハル・シェーダ・コンポーネントにより使用されるパラメータを定める細分割ファクタ・プロパティと、
    前記少なくとも1つのベジェ扇形の前記曲線に沿った前記定められた数の三角形の各々についての頂点位置を決定するためにドメイン・シェーダ・コンポーネントにより使用されるパラメータを定める位置ファクタ・プロパティと、
    を含む、APIモジュールと、
    を有する、システム
  10. 前記APIモジュールは、
    レンダリング画像に対して前記GPU上で割り当てられるメモリの量を定めるレンダリング・ターゲット記憶プロパティと、
    ラスタライザ・コンポーネントにより使用されるサンプリング・レートを定めるサンプリング・レート・プロパティと、
    をさらに含む、請求項記載のシステム
JP2016511720A 2013-04-30 2013-09-21 グラフィックス・パイプラインを用いた2次元曲線のテッセレーション Expired - Fee Related JP6235123B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/873,403 2013-04-30
US13/873,403 US9401034B2 (en) 2013-04-30 2013-04-30 Tessellation of two-dimensional curves using a graphics pipeline
PCT/US2013/061069 WO2014178905A1 (en) 2013-04-30 2013-09-21 Tessellation of two-dimensional curves using a graphics pipeline

Publications (3)

Publication Number Publication Date
JP2016520920A JP2016520920A (ja) 2016-07-14
JP2016520920A5 true JP2016520920A5 (ja) 2016-10-13
JP6235123B2 JP6235123B2 (ja) 2017-11-22

Family

ID=49305181

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016511720A Expired - Fee Related JP6235123B2 (ja) 2013-04-30 2013-09-21 グラフィックス・パイプラインを用いた2次元曲線のテッセレーション

Country Status (6)

Country Link
US (1) US9401034B2 (ja)
EP (1) EP2992510A1 (ja)
JP (1) JP6235123B2 (ja)
KR (1) KR20160003223A (ja)
CN (1) CN105493149B (ja)
WO (1) WO2014178905A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102329475B1 (ko) * 2014-08-27 2021-11-19 삼성전자주식회사 렌더링 퀄리티 제어 장치 및 방법
US10460513B2 (en) * 2016-09-22 2019-10-29 Advanced Micro Devices, Inc. Combined world-space pipeline shader stages
KR102657587B1 (ko) 2016-11-21 2024-04-15 삼성전자주식회사 커브 렌더링을 수행하는 방법 및 장치.
CN106709863B (zh) * 2016-12-28 2020-04-28 杭州趣维科技有限公司 一种基于gpu的高效2d矢量图形渲染方法
US10043233B1 (en) * 2017-07-20 2018-08-07 Adobe Systems Incorporated Digital media environment for processing vector objects of vector artwork
US11250817B2 (en) * 2017-11-16 2022-02-15 Synaptics Incorporated Display driver
US10580209B2 (en) * 2018-03-06 2020-03-03 Qualcomm Incorporated Removal of degenerated sub-primitives in tessellation
WO2020098825A2 (en) * 2019-12-20 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for evaluating risk
CN111581464A (zh) * 2020-04-10 2020-08-25 北京明略软件系统有限公司 一种数据信息的展示方法和装置
CN114581596A (zh) * 2022-02-25 2022-06-03 北京构力科技有限公司 基于图形处理单元gpu驱动的几何形体快速渲染的方法

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918626A (en) 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing
EP0430501B1 (en) 1989-11-17 1999-02-03 Digital Equipment Corporation System and method for drawing antialiased polygons
JPH03209499A (ja) * 1990-01-12 1991-09-12 Nec Corp アウトライン・フォントの形成方法およびその描画装置
US6008820A (en) 1995-08-04 1999-12-28 Microsoft Corporation Processor for controlling the display of rendered image layers and method for controlling same
US6317525B1 (en) 1998-02-20 2001-11-13 Ati Technologies, Inc. Method and apparatus for full scene anti-aliasing
US6501483B1 (en) 1998-05-29 2002-12-31 Ati Technologies, Inc. Method and apparatus for antialiasing using a non-uniform pixel sampling pattern
US7375727B1 (en) 1998-07-22 2008-05-20 Nvidia Corporation System, method and computer program product for geometrically transforming geometric objects
JP2000099732A (ja) * 1998-09-22 2000-04-07 Sony Corp 曲線編集装置及び方法
JP4332934B2 (ja) 1999-06-17 2009-09-16 株式会社セガ アンチエイリアシング方法及びこれを用いた画像処理装置
US6819332B2 (en) 2001-02-27 2004-11-16 3Dlabs Inc. Ltd. Antialias mask generation
US6940503B2 (en) * 2001-05-10 2005-09-06 Ati International Srl Method and apparatus for processing non-planar video graphics primitives
US7006101B1 (en) 2001-06-08 2006-02-28 Nvidia Corporation Graphics API with branching capabilities
US7027056B2 (en) 2002-05-10 2006-04-11 Nec Electronics (Europe) Gmbh Graphics engine, and display driver IC and display module incorporating the graphics engine
US20050212806A1 (en) 2002-05-10 2005-09-29 Metod Koselj Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine
US6943805B2 (en) 2002-06-28 2005-09-13 Microsoft Corporation Systems and methods for providing image rendering using variable rate source sampling
US6967663B1 (en) 2003-09-08 2005-11-22 Nvidia Corporation Antialiasing using hybrid supersampling-multisampling
EP1580694A1 (en) 2004-03-22 2005-09-28 STMicroelectronics S.r.l. Image rendering with adaptive filtering for anti-aliasing
GB0426170D0 (en) 2004-11-29 2004-12-29 Falanx Microsystems As Processing of computer graphics
US20060250407A1 (en) 2005-05-05 2006-11-09 Via Technologies, Inc. Texture filtering using a programmable table filter to improve computer graphics performmance
US20070018988A1 (en) 2005-07-20 2007-01-25 Michael Guthe Method and applications for rasterization of non-simple polygons and curved boundary representations
US7408553B1 (en) 2005-12-15 2008-08-05 Nvidia Corporation Inside testing for paths
US7924278B2 (en) 2006-07-28 2011-04-12 Microsoft Corporation Real-time GPU rendering of piecewise algebraic surfaces
US8269792B2 (en) 2006-11-21 2012-09-18 Qualcomm Incorporated Efficient scissoring for graphics application
US20080284780A1 (en) 2007-05-15 2008-11-20 R-Ming Hsu Method for enabling alpha-to-coverage transformation
JP2008299642A (ja) * 2007-05-31 2008-12-11 Mitsubishi Electric Corp 図形描画装置
US8115773B2 (en) 2007-06-07 2012-02-14 Apple Inc. Serializing command streams for graphics processors
US8044955B1 (en) 2007-08-31 2011-10-25 Adobe Systems Incorporated Dynamic tessellation spreading for resolution-independent GPU anti-aliasing and rendering
US20090141038A1 (en) * 2007-11-02 2009-06-04 Newaskar Saket Prashant Bezier Curves for Low Memory Embedded Graphics Systems
US8963930B2 (en) 2007-12-12 2015-02-24 Via Technologies, Inc. Triangle setup and attribute setup integration with programmable execution unit
US7928979B2 (en) 2008-02-01 2011-04-19 Microsoft Corporation Efficient geometric tessellation and displacement
US8643644B2 (en) 2008-03-20 2014-02-04 Qualcomm Incorporated Multi-stage tessellation for graphics rendering
EP2107528B1 (en) 2008-04-01 2012-12-26 Telefonaktiebolaget L M Ericsson (PUBL) Method of and arrangement for rendering a path
CN102016916B (zh) 2008-04-04 2014-08-13 先进微装置公司 用于抗混叠的过滤方法和装置
US8933943B2 (en) 2008-04-30 2015-01-13 Intel Corporation Technique for performing load balancing for parallel rendering
US8605087B2 (en) 2008-07-03 2013-12-10 Nvidia Corporation Hybrid multisample/supersample antialiasing
GB0819570D0 (en) 2008-10-24 2008-12-03 Advanced Risc Mach Ltd Methods of and apparatus for processing computer graphics
JP5294313B2 (ja) * 2008-11-07 2013-09-18 Necシステムテクノロジー株式会社 ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム
US8269775B2 (en) 2008-12-09 2012-09-18 Qualcomm Incorporated Discarding of vertex points during two-dimensional graphics rendering using three-dimensional graphics hardware
US8325177B2 (en) 2008-12-29 2012-12-04 Microsoft Corporation Leveraging graphics processors to optimize rendering 2-D objects
US8482560B2 (en) * 2008-12-31 2013-07-09 Intel Corporation Image forming techniques
US8274521B2 (en) 2009-05-08 2012-09-25 Oracle America, Inc. System available cache color map
US9245371B2 (en) 2009-09-11 2016-01-26 Nvidia Corporation Global stores and atomic operations
US8144147B2 (en) * 2010-04-07 2012-03-27 Intel Corporation Hierarchical bounding of displaced parametric surfaces
US8773448B2 (en) 2010-04-09 2014-07-08 Intel Corporation List texture
US20110285736A1 (en) 2010-05-21 2011-11-24 Kilgard Mark J Decomposing cubic bèzier segments for tessellation-free stencil filling
US20110310102A1 (en) * 2010-06-17 2011-12-22 Via Technologies, Inc. Systems and methods for subdividing and storing vertex data
US9183651B2 (en) 2010-10-06 2015-11-10 Microsoft Technology Licensing, Llc Target independent rasterization
CN102663384B (zh) * 2012-03-31 2014-01-22 北京智安邦科技有限公司 基于贝塞尔控制点搜索的曲线识别方法及装置

Similar Documents

Publication Publication Date Title
JP2016520920A5 (ja)
JP5224222B2 (ja) テッセレーション量に対してテッセレーション時間が線形に増加するテッセレータ
JP7032487B2 (ja) 三角形の再帰的細分割を用いたテッセレーション方法
EP2937834B1 (en) Method and apparatus for performing path rendering
CN106683199B (zh) 3d图形渲染方法和设备
JP6235123B2 (ja) グラフィックス・パイプラインを用いた2次元曲線のテッセレーション
JP7122396B2 (ja) グラフィックスパイプラインにおけるメモリ使用削減のためのコンパイラ支援技法
TWI611373B (zh) 路徑著色的最佳化三角形拓撲
CN106530379B (zh) 用于执行路径描边的方法和设备
CN106558090B (zh) 3d渲染和阴影信息存储方法和设备
US20150228111A1 (en) Graphics processing unit
JP2017004516A (ja) 変位係数を用いたテッセレーション方法
US20180211434A1 (en) Stereo rendering
KR102399686B1 (ko) 3d 렌더링 방법 및 장치
KR102442080B1 (ko) 동적 리소스 할당으로 웨이브 생성 제어 방법
JP6281006B1 (ja) 交差判定プログラム、交差判定方法及び交差判定装置
US9898838B2 (en) Graphics processing apparatus and method for determining level of detail (LOD) for texturing in graphics pipeline
JP2019509555A5 (ja)
US20150145858A1 (en) Method and apparatus to process current command using previous command information
KR102558739B1 (ko) 3d 렌더링 방법 및 장치
JP7278195B2 (ja) 地面のレンダリングに関するコンピュータグラフィック方法
WO2018140223A1 (en) Stereo rendering
KR102459848B1 (ko) 입자에 기반하여 대상 객체를 고속으로 모델링하는 방법 및 장치
KR102255188B1 (ko) 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치
US20160267701A1 (en) Apparatus and method of rendering frame by adjusting processing sequence of draw commands