[GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellation

Threads related to Google Summer of Code
User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Mon Jul 29, 2013 9:04 pm

This week I will slowly but surely push all my work from the first half of GSoC. I am not doing this all at once since I need to merge and test each feature set, ensuring I do not break anything while merging (which I usually do). This is a side effect of me locally splitting my repo into a series of feature-specific forks. My hope is to have all the work merged and pushed by Wednesday.

Besides merging my work, this week I also plan to finish fixing the visual tests for GL3+. These tests help verify new features did not break anything. More importantly, I believe visual tests will help ensure the small changes that accumulate over months of Ogre maintenance do not gradually break functionality as they have before. Tests will also reduce peer review overhead for Ogre team members.

If I have some time after the above two tasks, I will try to implement any interesting GL3+ extensions I missed so far.

Some of my work so far involves items originally scheduled for the latter half of the summer. For example, I chose to move up fixing certain samples in order to verify that the geometry and tessellation shaders worked. I will revise the schedule on the wiki accordingly, shuffling items without losing any. I plan to move the least interesting OpenGL extensions to the bottom of the schedule with the possibility of finishing them after GSoC. I am giving priority to samples over the less useful GL3+ extensions. The update ocean/water samples will likely be pushed near the end of the summer, but before the less interesting GL3+ extensions.

Simply put, I underestimated the amount of time required to implement some of the extensions and there was some additional work (such as getting visual tests running) that was not originally scheduled. Of course being sick for a little over a week did not help matters, though hopefully working during the 'off' week will put things to rights.
0 x

TheSHEEEP
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 972
Joined: Mon Jun 02, 2008 6:52 pm
Location: Berlin

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by TheSHEEEP » Wed Aug 21, 2013 4:22 pm

Hey, hey.

Any news for us? :)
0 x
My site! - Have a look :)
Also on Twitter - extra fluffy

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Fri Aug 23, 2013 5:44 am

Yep, news inbound. :)

I am wrapping up my work on OpenGL 4.2 and 4.3 features, debugging / updating existing samples and tests, and cleaning up my work so far. I decided to debug the existing samples before creating my own because the same bugs would occur in both and I prefer to debug something that was previously functional.

Once done with this work I will update the wiki with what I have implemented and push my work to Bitbucket. Should happen over the weekend.

One comment I wish to make purely for the purpose of venting: AMD OpenGL drivers are quite buggy for GL 4.3, but they appear functional at first blush. This is a time killing combination. Once GSoC is over, if AMD has not cleaned up their act I am switching to NVIDIA. Waiting a year for a minor OpenGL version update to stabilize is too slow for developers. They have not even released a stable driver since April.

BTW, a warning for AMD users (on Linux, perhaps other OS as well): shader storage buffers cause my system to hard lock. I spent several days trying to pinpoint the cause, but it is a mystery. The hard lock occurs on any OpenGL application using shader storage buffers, not just Ogre. Argh. For now I am disabling shader storage block tests until I can remedy the freezing.
0 x

User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by masterfalcon » Fri Aug 23, 2013 6:33 am

Have you had a chance to test the storage buffers on NVIDIA? It's possible that we can just disable it for AMD but let's be safe and entirely disable it for now. Just leave a comment or something so that we're sure to come back to it at some point.
0 x

ppd
Gnoblar
Posts: 8
Joined: Thu Nov 22, 2012 12:04 pm

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by ppd » Fri Aug 23, 2013 12:28 pm

holocronweaver wrote:
BTW, a warning for AMD users (on Linux, perhaps other OS as well): shader storage buffers cause my system to hard lock. I spent several days trying to pinpoint the cause, but it is a mystery. The hard lock occurs on any OpenGL application using shader storage buffers, not just Ogre. Argh. For now I am disabling shader storage block tests until I can remedy the freezing.
Quick check on latest g-truc OGL samples pack, and both his samples using shader storage buffers seems to work. The only sample that hard locked my comp was "multi draw indirect" one, though some other segfaulted. Compared to my last tries, when several samples did hardlock, AMD makes some progress. AMD 7770, Debian 64bit Sid+Experimental, fglrx 13.8 beta1.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Fri Aug 23, 2013 4:24 pm

masterfalcon wrote:Have you had a chance to test the storage buffers on NVIDIA?
Unfortunately I have not. However, this hard lock may be system specific to me as per below.
ppd wrote:Quick check on latest g-truc OGL samples pack, and both his samples using shader storage buffers seems to work. ... Compared to my last tries, when several samples did hardlock, AMD makes some progress. AMD 7770, Debian 64bit Sid+Experimental, fglrx 13.8 beta1.
I was afraid it might be system specific to me. I am using AMD 7950, Ubuntu 13.04 x64, and even with fglrx 13.8 beta2 I am still getting the hard lock. I will test in Windows later today and report my results.
0 x

TheSHEEEP
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 972
Joined: Mon Jun 02, 2008 6:52 pm
Location: Berlin

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by TheSHEEEP » Thu Sep 26, 2013 9:41 am

Knock, knock :)
0 x
My site! - Have a look :)
Also on Twitter - extra fluffy

User avatar
Zonder
Gargoyle
Posts: 1098
Joined: Mon Aug 04, 2008 7:51 pm
Location: Manchester - England
x 9

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Zonder » Fri Sep 27, 2013 11:13 am

Who's there?
0 x
There are 10 types of people in the world: Those who understand binary, and those who don't...
My Blog - http://www.This post is suspected as SPAM! If you feel otherwise contact a moderator.

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Fri Sep 27, 2013 4:37 pm

TheSHEEEP wrote:Knock, knock :)
Zonder wrote:Who's there?
Compute, geometry and tessellation shaders, transform feedback, read+write to buffers from shaders, new samples, repaired samples and unit tests (including some that haven't worked since ~2010), updates to the material script language to take advantage of new features, and more! :D

In a few days I will make an end-of-GSoC post that will detail what additions have been made and what remains to be done. At the moment I have a cold that is making me sleep about 12 hours a days, but it is receding and I hope tomorrow I will feel lucid. I also have been given teaching duties this semester, something I had not anticipated, which has drained allot of time this past month that otherwise would have gone towards OGRE.

Despite these setbacks, the major items on my checklist have been completed and I am committed to finishing the rest ASAP (~1-2 months, documentation and all). GSoC is only the beginning of my involvement in OGRE development. I have practical applications for the GL3+ RS in my own projects, so I will be contributing improvements and features added long after the Great GSoC Merge of 2013.
0 x

Forcecast
Gnoblar
Posts: 14
Joined: Thu Apr 18, 2013 4:32 pm

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Forcecast » Fri Sep 27, 2013 10:34 pm

First of all, nice work upgrading Ogre's OGL render system. It seems to be coming along nicely.

While testing the latest branch (2.0), the sample browser fails to start.
I'm getting an exception from OgreGLSLExtSupport at line 51: OGRE_CHECK_GL_ERROR(glGetProgramPipelineiv(obj, GL_INFO_LOG_LENGTH, &infologLength))
This happens in the function logObjectInfo where it seems to be have trouble linking the vertex shader since it receives the following hint:
"Error attaching FFPLib_Transform_VS shader object to GLSL Program Object"

At this stage, the OGL3+ render system is still experimental which means feedback is kinda crucial.
Keep it up!

PS: my GPU is capable of OGL 4.3 but that's not an issue here since it's FFP.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Fri Sep 27, 2013 11:00 pm

Forcecast wrote:While testing the latest branch (2.0), the sample browser fails to start.
Thanks for the report. What is your OS & GPU + driver version?
At this stage, the OGL3+ render system is still experimental which means feedback is kinda crucial.
Definitely. Any and all bug reports are welcome, though keep in mind that things are still seriously in flux for the next month or two. I will try to keep the repo better updated and stable.
0 x

Forcecast
Gnoblar
Posts: 14
Joined: Thu Apr 18, 2013 4:32 pm

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Forcecast » Fri Sep 27, 2013 11:21 pm

I'm using Windows 8, running on Nvidia GTX675M with driver version 9.18.13.1422

I've done some quick testing with another application of mine.
Rendering anything wasn't possible, it doesn't crash though but something in the log got my attention:

OpenGL:performance(medium) 131186: Buffer performance warning: Buffer object 1 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) is being copied/moved from VIDEO memory to HOST memory.
OpenGL:performance(medium) 131186: Buffer performance warning: Buffer object 3 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) is being copied/moved from VIDEO memory to HOST memory.

The same counts for rendering fonts.
Using the old OGL rendering context doesn't give me any problems so I guess the branch must be missing some updates :wink:

Looking forward to your update.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Thu Oct 03, 2013 5:13 am

Finishing up my GSoC mini-projects, merging them, and pushing to my repo will have to wait until the upcoming weekend (October 5-6). Being ill could not have come at a worse time and I am sufficiently behind at my 'main job' (Ph.D. student + teaching) to be worried. (Ironically I was under less stress while experiencing feverish hallucinations of talking porcupine fish.)

To partially make up for the further delay, here is my end of GSoC summary. I will be updating my wiki later this week with a more granular look at what has and has not been completed.

GL3+ Feature Completion
Major OpenGL 3+ features that have been added or completed include:
  • compute shaders
  • geometry & tessellation shaders
  • atomic counters
  • transform feedback
  • uniform and shader storage blocks (respectively r and r/w uniform access from shaders; shader blocks are still a little buggy)
  • image load/store (r/w sampler-like texture access from shaders)
  • GLSL: double integers (improved), multi-dimensional arrays
Do you lust for a feature not on this list? Let me know and I can move it to the top of my queue.

There is a small laundry load of features not listed here that I added, but all are pretty minor in comparison. My wiki update will include them for the curious. About 85% of the GL3+ features were implemented, so another month and the GL3+ RS should be ready to ship.

Naturally the GL3+ RS was by far the greatest focus of my time. Some features I thought were already implemented were only partially implemented or had placeholder code, so I had to fill in the details or start over. A good example is uniform blocks, which misleadingly appeared implemented but upon closer inspection was mostly placeholder code.

Many of these features required not only implementing the relevant OpenGL, but also updating the material scripts to expose these features. I ended up spending about 30-40% of my time on GL3+ RS working on material scripts or the GLSL parser. In the near future I may revisit the GLSL parser and see if it can't be mostly replaced with OpenGL calls which are much cleaner and more robust. It will depend mostly on what features OpenGL 3.* offers, so I am not holding my breath.

I fixed quite a few bugs in the GL3+ RS, though I regrettably did not keep a bug log. I just fixed what I encountered and often lumped the bug fix with changes for adding a new feature. Overall I could have done a lot better job managing my commits, but at the time I felt I had spent more than enough time learning Mercurial and wanted to just get features implemented as quickly as possible. Keeping track of all my changes and separating them into multiple commits would have been very time consuming, especially with my bad memory. ("Who the heck changed all this code!? Oh wait, it was me...just yesterday.") Hopefully my sloppy bug logging will not come back to haunt me. *knock on wood* A few I remember include fixing wireframe mode and numerous problems with separable programs.

New Samples
I have begun all of my new samples except mesh smoothing, but no sample is complete. Most are about 75% complete, with nearly all the coding done and debugging being largely what remains. I originally intended to upload the incomplete samples, but decided against it because I really want them to be a surprise. :)
Making new samples has been the funnest part of my GSoC, despite often revealing annoyingly evasive bugs as a consequence. The samples represent my best effort to show off the GL3+ RS in particular and Ogre in general, so I have a high quality standard to reach before the unveiling. In a month at least half of the new samples should be complete and in the repository.
BTW, the mesh smoothing sample is still coming. I postponed it while I niggled with getting transform feedback to work, but now all the required API is exposed so it should be doable.

Unit Tests and Existing Samples
When I added this to my list of GSoC tasks, I did not realize how generally broken and unused the unit tests have become, even for the GL RS. The last time I used the unit tests was fall 2012 and they all passed and seemed to work - I should not have assumed this was still the case. What I started with would segfault only a few tests in for plain GL RS, so I first had to fix the tests for GL RS first so I could have a basis of reference. In this I was largely successful, with only a few tests giving odd results (which may be due to problems with the GL RS). Repairing the unit tests and samples was a very good way to expose bugs in the GL3+ RS, but it was tedious and slow going, as debugging GPU API typically is.

I managed to get quite a few samples and unit tests running, but not all. The particular ones I nabbed will be shown on the wiki page, but the ones I am most proud of are the isosurface and geometry shader particle system samples. Debugging those took my OpenGL debugging skills to their limit and I learned much from the experience. Particularly, it is best to quickly give up brute force debugging and opt out for simple tests that gradually reach the complexity of the original. This is particularly true with OpenGL because many internals of the state machine are simply not accessible to inspection, so you have to resort a more 'push the button and see what happens' approach.

I should have the original samples and unit tests all working in a couple weeks. They are high priority since they help with regression testing and ensuring I don't 'fix' what works.

BTW, I added a --nograb option for visual tests similar to the on for the SampleBrowser. It allows you to move the mouse outside the window while debugging the visual tests, but it is not recommended for normal unit testing because it can affect the results on some systems. I still need to document this behavior.

Random Encounters
I ran into a few uglies I had not anticipated.
* The SampleBrowser cache was not working for GL3+, causing all sorts of odd behavior that was difficult to debug. Unfortunately it took some time before I realized this. Some samples worked fine and others inexplicably did not, so I assumed issues were sample specific. :roll: I still need to update the code so that it recognizes when it needs to update the cache - at the moment you have to manually delete the cache if you decide to change the shader code for a sample. I have a Bash script that does this for me, but it shouldn't be necessary. To my knowledge this problem affects all render systems, not just GL3+.
* The material script and GLSL parsers are somewhat of a hodgepodge and this makes working with them a chore. I tried to improve matters for the areas I touched, but a serious reckoning remains to be had. Upgrading the material scripts and their parser would make a great GSoC project. Currently scripting is a bit of a chore and many features remain unavailable from material scripts (such as transform feedback).

Documentation
I am in the process of documenting all my changes and will put them into the main Ogre manual, except perhaps for a few more detailed notes on the internals that will go on the wiki. Class diagrams and a basic explanation of how the GL3+ RS works will be included, free of charge. I suffered to gain this information - no reason for you to do the same. :D

Thanks
Many thanks need to be given to masterfalcon for getting the GL3+ render system started and in a usable state. Without his work my GSoC would have been allot less productive and may never have happened at all. He was always quick to respond to my questions, was patient with my occasional brain malfunctions, and was overall a great GSoC mentor. Thanks for a great summer! I look forward to continuing to work alongside you and the rest of the fantastic Ogre community.
0 x

Forcecast
Gnoblar
Posts: 14
Joined: Thu Apr 18, 2013 4:32 pm

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Forcecast » Thu Oct 03, 2013 10:29 am

Good and clear write-up, I'm curious to see the improved RS and sample library.
You're right about the cache, it's definitely not OGL related since I'm getting the same issue using DX11 (deleting the cache solves it, like you mentioned).
0 x

User avatar
scrawl
OGRE Expert User
OGRE Expert User
Posts: 1119
Joined: Sat Jan 01, 2011 7:57 pm
Location: Germany
x 2

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by scrawl » Fri Oct 04, 2013 1:29 am

The way I deal with the cache issue is to save the last modified time (boost::filesystem::last_write_time) of all shader sources in a file upon loading them, and if the time doesn't match when they are loaded the next time, delete the cache for all shaders that use this file.
You're probably doing something similiar in your bash script. But I kinda think Ogre should handle this.
0 x

uzik
Goblin
Posts: 202
Joined: Sun Feb 25, 2007 1:45 am
Location: USA
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by uzik » Tue Oct 22, 2013 11:29 pm

Did khr_debug make it into your project by any chance?
0 x
---A dream doesn't become reality through magic; it takes sweat, determination and hard work.

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Wed Oct 23, 2013 2:50 am

uzik wrote:Did khr_debug make it into your project by any chance?
Not yet, but it is on my TODO list. Getting the error logs will be easy, but how to expose the markers and groups to the user via OGRE is not yet obvious to me because I am not sure how this compares to DirectX.
0 x

User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by masterfalcon » Wed Oct 23, 2013 4:26 am

ES 2 on iOS doesn't have all the components of khr_debug but it does have event markers and labels. You can check out what I did for that.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Wed Oct 23, 2013 6:23 pm

This month has not been terribly productive due to work taking up even my weekends. I will need at least another month to finish the remaining small features of the GL3+ RS. I am planning on a complete release at the end of November, around Thanksgiving (USA holiday). That being said, I will try to get an interim release out at the end of October that anyone interested can help me test. It will contain all the main features of the GSoC plus a few new ones, and possibly a couple of the new samples. I will list the main features I suspect of being buggy and will be particularly interested to hear how NVIDIA and Intel graphics drivers fair.
masterfalcon wrote:ES 2 on iOS doesn't have all the components of khr_debug but it does have event markers and labels. You can check out what I did for that.
Thanks for pointing this out, I will take a look.
holocronweaver wrote:
uzik wrote:Did khr_debug make it into your project by any chance?
Not yet, but it is on my TODO list. Getting the error logs will be easy, but how to expose the markers and groups to the user via OGRE is not yet obvious to me because I am not sure how this compares to DirectX.
According to gtruc, it appears khr_debug is not yet supported by AMD drivers, and neither are shader subroutines which I implemented but never could get working (and now I know why). I will still try creating an initial implementation and finalize it once I or someone else gets a chance to test on a supporting driver.
0 x

ppd
Gnoblar
Posts: 8
Joined: Thu Nov 22, 2012 12:04 pm

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by ppd » Wed Oct 23, 2013 8:29 pm

holocronweaver wrote: According to gtruc, it appears khr_debug is not yet supported by AMD drivers, and neither are shader subroutines which I implemented but never could get working (and now I know why). I will still try creating an initial implementation and finalize it once I or someone else gets a chance to test on a supporting driver.
Samples using KHR_DEBUG (gl-430-debug) nad subroutines (gl-430-program-subroutine and gl-430-program-subroutine) seem to work on Linux, AMD & fglrx 1:13.11~betav1-1. AMD driver does not accept -1 for third (length) argument in glPushDebugGroup (and probably other similar uses) and requires setting it by hand. Note that on Linux data dir path in last G-truc sample pack is broken.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Wed Oct 23, 2013 10:48 pm

ppd wrote: Samples using KHR_DEBUG (gl-430-debug) nad subroutines (gl-430-program-subroutine and gl-430-program-subroutine) seem to work on Linux, AMD & fglrx 1:13.11~betav1-1. AMD driver does not accept -1 for third (length) argument in glPushDebugGroup (and probably other similar uses) and requires setting it by hand. Note that on Linux data dir path in last G-truc sample pack is broken.
I had hoped this was the case, but have not had time to investigate myself. Thanks for this info. I am on the latest Catalyst beta driver (same version as the above, I believe), so I should be able to finish off and debug shader subroutines before the late October test release.
0 x

Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Ident » Sun Oct 27, 2013 5:37 am

I am using the latest 2.0 branch of Ogre. I run with fixed-function disabled in OGL mode and i get the exception "your graphics card does not support tesselation shaders" which is clearly rubbish because the demo works fine in D3D11 mode - so the hardware capability is there. The driver's capabilities could be in question of course, but i doubt that is the issue.

I got a AMD RADEON HD 7900 series GPU.
I updated my drivers just now without change - which i didnt expect because the hull shaders should be supported since long: http://www.g-truc.net/post-0345.html

If i comment out the lines that create the exception i would get a memory access viol. when the demo uses the material

Help appreciated because I want to use the OGL3 tesselation shaders in an upcoming research project. I can also do further testing etc just tell me what I have to do.
0 x

User avatar
holocronweaver
Google Summer of Code Student
Google Summer of Code Student
Posts: 273
Joined: Mon Oct 29, 2012 8:52 pm
Location: Princeton, NJ

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by holocronweaver » Sun Oct 27, 2013 6:21 am

Ident wrote:I am using the latest 2.0 branch of Ogre. I run with fixed-function disabled in OGL mode and i get the exception "your graphics card does not support tesselation shaders" ... I got a AMD RADEON HD 7900 series GPU. ... I updated my drivers just now without change.
Just to be clear, are you running the GL or GL3+ render system? No HW tessellation support is provided in the older GL RS.

In the event that isn't the problem, what OS, driver version, and specific GPU are you using?

BTW, for GL3+ enabling the fixed-function pipeline simply means emulation via RTSS (which essentially converts fixed function commands into equivalent shaders). No matter the setting, the core profile is used for the GL context which disables all GL fixed functions.
0 x

User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by masterfalcon » Sun Oct 27, 2013 6:27 am

Also, this project has not yet been merged into the mainline.
0 x

Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
Contact:

Re: [GSoC 2013 - accepted] OpenGL 3+; Geometry & Tessellatio

Post by Ident » Sun Oct 27, 2013 9:56 pm

Thanks for the responses. It was my fault. I was in the right branch but i didn't see the CMAKE option for GL3 when i configured the build in cmake, most likely I hadn't cleared my cache after my branch switch from the original pull - and I wasn't aware this option existed at all. After all GL could is fully backwards compatible, so i took it as a possibility that the GL3+ stuff might be integrated into the regular GL rnederer, and hiding the internal engine decisions (using no deprecated stuff or using it) from the users.

Anyways, for anyone who might be looking for the setting, it is called "OGRE_BUILD_RENDERSYSTEM_GL3PLUS"

So since i fixed that, i successfully built the project and started the samplebrowser with GL3 Renderer.

Three major problems I had (not necessarily related to each other):

1. When i run it and click any arbitrary item under "Select Category" all the preview textures for the demos disappear, also in all other categories that can be selected afterwards. Apparently however, when there is a very long list of demos, then the ones that were not yet displayed at the point of category-switching are displayed with their correct textures when i scroll down.

2. The program quite regularly freezes entirely (no exception or access violation). It doesnt render anymore - i can't even tab back into it. It seems to be stuck inside some locking function , at least it breaks there everytime i interrupt the program during such a freeze. The freeze seems to be caused by GUI interaction, so probably something new that the selection triggers to be rendered is causing a lockdown. There is no specific action to reproduce this. it seems to be arbitrary.
Callstack: http://pastebin.com/nfQyUcrt

3. Starting the tesselation demo instnatly causes a memory access violation
Callstack: http://pastebin.com/U2RCKzG0

I m personally most concerned about the tesselation demo not working.


EDIT (System info):
Windows 7 64 bit
ATI/AMD Radeon HD 7950
Drivers:
Driver Packaging Version 13.152.1.8-131008a-163824C-ATI
Catalyst Version 13.9
0 x

Post Reply