Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
July 28, 2021
arrowPress Releases







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Sponsored Feature: 'Edge Detection with Direct3D 10'

Sponsored Feature: 'Edge Detection with Direct3D 10' Exclusive

August 28, 2008 | By Staff

August 28, 2008 | By Staff
Comments
    Post A Comment
More: Console/PC, Exclusive



In the latest Intel-sponsored feature, part of the Gamasutra Visual Computing microsite, Intel senior graphics software engineer Joshua Doss looks at techniques for edge detection, crucial for creating cel shading and other non-photorealistic rendering methods in games.

Doss, a member of the advanced visual computing team in the Intel Software Solutions Group, includes several code examples and diagrams illustrating ways to approach GPU-based edge inking using Direct3D 10.

After describing existing techniques, Doss moves on to strategies for DirectX 10 and beyond:

"Since DirectX 10 got its geometry shader, programmers are able to calculate face normals on the GPU, allowing for accurate detection methods for both silhouette and crease edges without the preprocessing step and the bus overhead resulting from frequent CPU to GPU communication.

Nvidia devised this application and presented it at Siggraph 2006 (see Tariq in References) with respect to detecting and extruding silhouette edges.

The first step is to create a mesh with adjacency information. This is done by creating a vertex buffer with three vertices per primitive, and then creating an index buffer containing the adjacent vertices in the proper winding order.

The primitive-type triangle with adjacency must be declared in both the host code and the geometry shader constructor. As a result, the geometry shader gets access to vertex information from three triangles: the primary triangle, and the three adjacent triangles for a total of six vertices."


You can now read the full feature, including three code excerpts and numerous visual aids. (No registration required; please feel free to link from other websites.)


Related Jobs

Mountaintop Studios
Mountaintop Studios — San Francisco, California, United States
[07.27.21]

Lead Tech Artist
Mountaintop Studios
Mountaintop Studios — San Francisco, California, United States
[07.27.21]

Data Engineer
Mountaintop Studios
Mountaintop Studios — San Francisco, California, United States
[07.27.21]

Senior Gameplay Engineer
Mountaintop Studios
Mountaintop Studios — San Francisco, California, United States
[07.27.21]

Senior Engine/Systems Engineer









Loading Comments

loader image