[SOC 2008] GPU Font System/Vector Texture Mapping

Threads related to Google Summer of Code
NathanBritton
Gnoblar
Posts: 4
Joined: Tue Apr 01, 2008 4:23 am

[SOC 2008] GPU Font System/Vector Texture Mapping

Post by NathanBritton »

I am reposting this as it's own thread - it was originally posted here

Hello,

I am an undergraduate student in ICS and I'm interested in applying for an Ogre-mentored Summer of Code Grant. The project I'm proposing is "Vector Texture Map Support" which was essentially inspired by the GPU-based font idea on the ideas page. However, I intend to use this paper from SIGGRAPH [http://doi.acm.org/10.1145/1342250.1342281]

Anyway, I'm taking the extra week to brush up my proposal and I have a few questions:

-Is it necessary that this be for text, or is a more broad solution for patterns and logos and textures in general the ultimate goal?

-The way I've been thinking about it, a more general solution would be the place to start and then add a module that handles char-to-SVG conversion later. To start with text and then plan for that to open the door to images seems counterintuitive, but I'm just introducing myself to this now and have little experience in the matter; am I missing something?

-Similarities to OpenVG were mentioned, but I did not get the impression that OpenVG was intended for use in a 3D environment like vector textures would be; granted I haven't looked through OpenVG much and I don't have much time. If anyone here knows OpenVG well, would working with OpenVG be a better route if my goal is to make vector graphics work as texture maps?

I would be very grateful for any input anyone can provide.
NathanBritton
Gnoblar
Posts: 4
Joined: Tue Apr 01, 2008 4:23 am

Post by NathanBritton »

This is a response I got from the original thread from Assaf Raman:
I know that article - he gets poor FPS with an NVIDIA GeForce 8800 GTX, so I didn't read it too deep, what do you think about the poor FPS?

Yeah - after taking another look at the Waterloo paper, it really seems that they were going at it from more of a raw theoretical perspective. I think that was my initial draw to it, since my experience thus far is predominantly theoretical. Since speed is essential, though, this might not be completely appropriate for Ogre. If someone with a GeForce 8800 can't run it smoothly, then that's a failure for our purposes, I would think.

I went back to look at the other articles posted in the suggestion thread more closely. I think I may have jumped the gun in assuming they were purely text-oriented - they are all implemented as generic shaders... oops ^^;

So anyway, I like the Gustavson (conics) paper's explanation because my calculus is rusty and it's easier to work in quadratic polynomials than it is in cubic polynomials; plus the example code is nice. But the Ray paper (vtm on the GPU) seems like it was done with performance in mind every step of the way. It's hard to compare the two because the Gustavson paper does such a poor job of documenting their results.

So I'm leaning toward the Ray paper, using Gustavson as a secondary resource.
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4

Post by tuan kuranes »

I would go for more broad solution, still making sure you'll be able to do glyph.

OpenVG is not the good route, as we sure have less requirements, specially if you intend to finish this summer, giving a usable deliverable.

If reading papers, check how you'll integrate this in Ogre, what you'll be able to deliver, and double-check performance.
NathanBritton
Gnoblar
Posts: 4
Joined: Tue Apr 01, 2008 4:23 am

Post by NathanBritton »

Yeah, I think I understand the difference between OpenVG and what we need now. No need to complicate it with unnecessary tie-ins.

As far as how it'll integrate into Ogre, how low-level would generally be expected for a proposal?
I want it to be a plug-in and that's what I specified in my application, but what with classes and midterms, I couldn't research enough to know exactly how and what it will plug-in to.
Is it sloppy to assume that fleshing out those kinds of details would be part of the project itself? I know it's too late to make changes, but for future reference I'd appreciate any input.

Thanks
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4

Post by tuan kuranes »

Is it sloppy to assume that fleshing out those kinds of details would be part of the project itself?
Yes.
How can mentors select best applications if student don't give any details ?

You have to take mentor place for a second...
Mentors need to make sure :
- Student understands the subject. (papers, research, implementation idea)
- Student is able to do it. (experience, planning, deliverables)

We choose the one we think they give best proof of those two, which means going much deeper than you did this year.