Hello,
So I recently received an email informing me that I have the option of refining or improving the list of D3DX functions that I came up with for my proposal. My current time line and list isn't a very good one to say the least. Basically, in the interest of time, I put together the proposal by grabbing a set of functions I saw in spec files marked with 'stub' without much thought.
Clearly that wasn't optimal, so I'm pretty happy that I don't have to stick with that poorly put together list. It doesn't really represent my best work, and I'd like to do better, so I'm reaching out here in hopes that someone can point me in the right direction on how to start compiling a more meaningful list and time line to go with it.
My idea right now is just to look at the stubs and cross reference that with MSDN to try and get a grasp of how they might be implemented and move on from there. maybe the MSDN documentation can help me find related functions that would make sense to work on together?
Just so anyone reading this has something to work with, I'll attach a draft of my proposal[1]. It should be identical to the one I submitted.
[1] https://docs.google.com/document/d/1kjWMNBX8xba_MlTOYgoh2DMBLdWZA3wDQPBvI5sN...
Thanks for the help,
Kieran Duggan
2018-04-11 6:07 GMT+02:00 Kieran Duggan kieranduggan15@gmail.com:
Hello,
So I recently received an email informing me that I have the option of refining or improving the list of D3DX functions that I came up with for my proposal. My current time line and list isn't a very good one to say the least. Basically, in the interest of time, I put together the proposal by grabbing a set of functions I saw in spec files marked with 'stub' without much thought.
Clearly that wasn't optimal, so I'm pretty happy that I don't have to stick with that poorly put together list. It doesn't really represent my best work, and I'd like to do better, so I'm reaching out here in hopes that someone can point me in the right direction on how to start compiling a more meaningful list and time line to go with it.
My idea right now is just to look at the stubs and cross reference that with MSDN to try and get a grasp of how they might be implemented and move on from there. maybe the MSDN documentation can help me find related functions that would make sense to work on together?
Yeah, that should be a good starting point. You're probably going to find terms / techniques you don't know much about, so you may need to branch out from there a bit in your research. Also looking at our current d3dx9 implementation and tests might be helpful. FWIW, notice that there are also a bunch of interface methods (some of which are mentioned in our Summer of Code wiki page), rather than plain functions, that are stubs or otherwise not complete. Just in case you didn't see them earlier.
No pressure, take your time, but let us know when you make progress. Feel free to ask specific questions if you have any.
So I've been busy this week unfortunately. I had the chance to look over some functions though today. I saw that on the ideas list text rendering functions were mentioned specifically, so I took a look at those and found a few of them with their corresponding MSDN pages: ID3DXFontImpl_GetGlyphData ID3DXFontImpl_PreloadCharacters ID3DXFontImpl_PreloadGlyphs ID3DXFontImpl_PreloadTextA ID3DXFontImpl_PreloadTextW ID3DXFontImpl_DrawTextA ID3DXFontImpl_DrawTextW ID3DXFontImpl_OnLostDevice ID3DXFontImpl_OnResetDevice
Could working on these fill enough time for a summer project? Also what exactly is the suffix A/W for? I remember seeing it in the code a while ago and not understanding it.
On Tue, Apr 17, 2018 at 5:50 PM, Matteo Bruni matteo.mystral@gmail.com wrote:
2018-04-11 6:07 GMT+02:00 Kieran Duggan kieranduggan15@gmail.com:
Hello,
So I recently received an email informing me that I have the option of refining or improving the list of D3DX functions that I came up with for
my
proposal. My current time line and list isn't a very good one to say the least. Basically, in the interest of time, I put together the proposal by
grabbing
a set of functions I saw in spec files marked with 'stub' without much thought.
Clearly that wasn't optimal, so I'm pretty happy that I don't have to
stick
with that poorly put together list. It doesn't really represent my best work, and I'd like to do better, so I'm reaching out here in hopes that someone can point me in the right direction on how to start compiling a more meaningful list and time line to go with it.
My idea right now is just to look at the stubs and cross reference that
with
MSDN to try and get a grasp of how they might be implemented and move on from there. maybe the MSDN documentation can help me find related functions that
would
make sense to work on together?
Yeah, that should be a good starting point. You're probably going to find terms / techniques you don't know much about, so you may need to branch out from there a bit in your research. Also looking at our current d3dx9 implementation and tests might be helpful. FWIW, notice that there are also a bunch of interface methods (some of which are mentioned in our Summer of Code wiki page), rather than plain functions, that are stubs or otherwise not complete. Just in case you didn't see them earlier.
No pressure, take your time, but let us know when you make progress. Feel free to ask specific questions if you have any.
On 04/23/2018 01:35 AM, Kieran Duggan wrote:
Also what exactly is the suffix A/W for? I remember seeing it in the code a while ago and not understanding it.
A = ANSI W = Unicode
Many (but not all) APIs have both versions, whereas others are ANSI or Unicode only.
Am 23.04.2018 um 08:35 schrieb Kieran Duggan kieranduggan15@gmail.com:
Also what exactly is the suffix A/W for? I remember seeing it in the code a while ago and not understanding it.
The A / W is ASCII (char *) vs Unicode (WCHAR *). Ideally the implementation is in the W version and the A version converts strings from ASCII to Unicode with MultiByteToWideChar, calls the W version, and if necessary, converts result strings back to Ascii. See for example FindWindowExA in dlls/user32/win.c for a simple example.
The A->W conversion is not always trivial, e.g. care has to be taken with NULL pointers and string sizes.
2018-04-23 8:35 GMT+02:00 Kieran Duggan kieranduggan15@gmail.com:
So I've been busy this week unfortunately. I had the chance to look over some functions though today. I saw that on the ideas list text rendering functions were mentioned specifically, so I took a look at those and found a few of them with their corresponding MSDN pages: ID3DXFontImpl_GetGlyphData ID3DXFontImpl_PreloadCharacters ID3DXFontImpl_PreloadGlyphs ID3DXFontImpl_PreloadTextA ID3DXFontImpl_PreloadTextW ID3DXFontImpl_DrawTextA ID3DXFontImpl_DrawTextW ID3DXFontImpl_OnLostDevice ID3DXFontImpl_OnResetDevice
Could working on these fill enough time for a summer project?
I think it's not enough for a full GSoC project, although I'm notoriously terrible at assessing work / time needed to do something...
I just sent you a private email with a bunch of GSoC info (congratulations for getting accepted btw!) and some more exploratory stuff I suggest you to do WRT those ID3DXFont methods. If / when you get some more time, keep looking for other functions you might be interested in implementing. It's probably better to come up with a larger set of functions / APIs and do as much as time permits (i.e. not expecting to finish everything) than the other way around.