[Bf-committers] Status of OpenGL compatibility layer.

Jason Wilkins jason.a.wilkins at gmail.com
Sun Jan 13 12:55:56 CET 2013


My status on this (gl compatibility layer) is that my self review
created a long to-do list that I'm still working on.

One thing I decided I wanted to include was expanded compatibility
with OpenGL ES.  Alex had gotten things working with Android, but I
want to have the ability to both cross compile for embedded systems
and the ability to run ES on desktop systems for development purposes.
 Getting this working, even just experimentally, would make sure that
the compatibility layer is truly "compatible" by giving it at least
one more real target.

I'll give a new estimate of my schedule to get this ready for review soon.

On Mon, Dec 3, 2012 at 12:44 AM, Brecht Van Lommel
<brechtvanlommel at pandora.be> wrote:
> Hi Jason,
>
> Thanks for the update, sounds good to me.
>
> Brecht.
>
> On Sun, Dec 2, 2012 at 8:18 PM, Jason Wilkins <jason.a.wilkins at gmail.com> wrote:
>> I've been doing regular merges of the Swiss-cheese branch with trunk
>> to keep the code from becoming stale.  In addition I've been working
>> on testing and documentation.  All efforts have been slow but steady.
>>
>> There has been some creeping uncertainty that the merges are not
>> perfect.  The merge seems to sometimes make some very bad decisions
>> about how to merge and I seem to only catch these by luck.  I suspect
>> it might have done things I did not happen to see.  I have made a
>> giant patch that I intend to go over line by line and make sure
>> everything makes sense.
>>
>> However, I've given up on merging the game engine, since I do not
>> understand the differences between Swiss-cheese's and trunk's
>> versions.
>>
>> There are several minor changes that I'd like to start merging into
>> trunk and since we are at the beginning the next release cycle it
>> seems like a good time.  These are just some things that present a
>> headache when merging, so I'll get them reviewed and merged in now.
>>
>> I think it is very important that I devise a means to test all of the
>> code before full review.  There are about 5,000 places where the new
>> OpenGL layer is used throughout the code, but even opening all region
>> types and displaying one of every kind of object only tests about 2000
>> of those lines.  I have enabled code coverage and have a script I've
>> written to help me gradually track all of these untested lines down
>> and make sure they get run.
>>
>> I have written a rough draft of most of the documentation.  Since
>> replacing deprecated functions requires a significant change in how
>> basic things are drawn, the documentation needs to quite good because
>> it will affect lots of contributors.  It needs to be both technically
>> good by answering the question, "How do I do this now?," and manage
>> the outrage factor the makes people as, "Why do I have to do this like
>> this now?!" :-)
>>
>> I could probably do all of this in a week if I worked full time.
>> Unfortunately, I cannot dedicate full time right now though, so I am
>> aiming for end of the year.
>>
>> Summary:
>> * I need to do a full self-review to make sure merging hasn't mangled anything.
>> * Swiss-cheese's game engine is in a weird state due to differences
>> from trunk I'm not familiar with.
>> * I'm going to start submitting patches from Swiss-cheese to make
>> maintenance easier.
>> * I have a system in place to test and track the thousands of changes
>> in drawing code
>> * Documentation at this point might be good enough for reviewers but
>> not for the community.
>> * I estimate I have 40-50 hours of work to do before review, but I
>> cannot do it all at once.
>> * Aiming to start review immediately next year.
>>
>> Plan:
>> 1st week: Self code review and create any patches that can be applied now
>> 2nd-3rd week: Achieve full code coverage.  Automate if possible.
>> Visually compare w/ trunk
>> 4th week: Holiday
>> 5th week: Profile and track down any performance problems.  Improve
>> documentation.
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers


More information about the Bf-committers mailing list