There is no escape from the Washu

Profile
ArenaNet LLC
It really was Fruny
435 comments
7 followers
146 entries
Advertisement
Washu
January 04, 2015
Sweet Snippets - Handling Input and Callbacks with Awesomium
In our previous entry we started rendering a UI overlay on our application. We added some basic interactivity in that we can update a health bar by sending javascript commands. However, what if we want the UI to be able to notify us of actions? That's what we're going to cover in this entry. In add…
4,876 views
Washu
January 02, 2015
Sweet Snippets - More Using Awesomium and Direct3D
In the previous entry we built up a basic sample that loads a web page and uploads it to a texture, which we then rendered to a full screen triangle. In this entry we're going to work on optimizing that process a bit, and making it so that our texture updates whenever the source updates.

Introductio…
3,718 views
Washu
December 30, 2014
Sweet Snippets - Rendering Web Pages to Texture using Awesomium and Direct3D
With our familiarity with Direct2D now maximized, it's time to move on to other methods of rendering UI and text! At this juncture you're now familiar with Direct2D and it's power (well, maybe not. But let's pretend you are!). However, what if we wanted to render a UI to the screen? In this entry w…
7,161 views
Washu
December 26, 2014
Sweet Snippets - More Text Rendering with DirectWrite/Direct2D and Direct3D11.
Previously we built ourselves a short little application that displayed some text over a triangle. Rendered using Direct3D11, DirectWrite and Direct2D. There were a few problems with the sample though, and so I've decided to do a followup which shows some changes which fix those issues.

Introduction…
7,178 views
Washu
December 24, 2014
Sweet Snippets - Rendering Text with DirectWrite/Direct2D and Direct3D11.
At one point there was a series called Sweet Snippets. I don't remember where, but I think it was in the C++ Magazine (when such a thing still existed). Anyways, this is not an attempt to resurrect that, however I feel that sometimes certain questions can be answered with a simple sweet snippet of …
11,521 views
Washu
November 18, 2014
C++ Quiz #4

This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.




  • What is the value of i after the first numbered line is evaluated?

  • What do you expect the second numbered line to …
  • 2,692 views
    Washu
    November 18, 2014
    C++ Quiz #3

    This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.



    Given the following code:



    class Base {  
    public:
    virtual ~Base() {}
    virtual void DoSomething() {}
    voi…
    1,872 views
    Washu
    November 18, 2014
    C++ Quiz #2

    This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.




  • Using the code below as a reference, explain what behavior should be expected of each of the commented lines, pleas…

  • 1,587 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD EAX, [EAX] of N
    So far I've covered how SlimGen works and the difficulties in doing what it does, including calling convention issues that one must be made aware of when writing replacement methods for use with SlimGen.
    So the next question arises, just how much of a difference can using SlimGen make? Well, a lot o…
    1,642 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD AL, [RAX] of N
    The question does arise though, when using SlimGen and writing your SSE replacement methods, what kind of calling convention does the CLR use?
    The CLR uses a version of fastcall. On x86 processors this means that the first two parameters (that are DWORD or smaller) are passed in ECX and EDX. However…
    1,243 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD [EAX], EAX of N
    So previously we delved into one of the nastier performance corners on the .Net framework. Today I'm going to introduce you to a tool, that is in development currently, which allows you to take those slow math functions of yours and replace them with high performance SSE optimized methods.
    We've cal…
    1,130 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD [EAX], AL of N
    Imagine you could have the safety of managed code, and the speed of SIMD all in one? Sounds like one of those weird dreams Trent has, or perhaps you are already thinking of using C++/CLI to wrap SIMD methods to help reduce the unmanaged transition overhead. You might also be thinking about pinvokin…
    940 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 4
    As noted previously there are some cases where the performance of unmanaged code can beat that of the managed JIT. In the previous case it was the matrix multiplication function. We do have some other possible performance benefits we can give to our .NET code, specifically, we can NGEN it. NGEN is …
    1,153 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 3
    Integrating unmanaged code into the managed platform is one of the problem areas with the managed world. Often times the exact costs of calling into unmanaged code is unknown. This obviously leads to some confusion as to when it is appropriate to mix in unmanaged code to help to improve the perform…
    906 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 2
    Previously I discussed various potential issues the x86 JIT had with inlining non-trivial methods and functions taking or returning value types. In this entry I hope to cover some potential pitfalls facing would be optimizers, along with discussing some unexpected optimizations that do take place.O…
    944 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 1
    Introduction
    .NET has been getting some interesting press recently. Even to the point where an article in Game Developer Magazine was published advocating the usage of managed code for rapid development of components. However, I did raise some issues with the author in regards to the performance met…
    1,037 views
    Washu
    September 14, 2014
    Is It Really A Bug For A Beginner To Be Using C-Strings In C++?
    Depends, but probably yes.
    A beginning programmer should be focusing on learning to program. That is: the process of taking a concept and turning it into an application. Problem solving, in other words. Learning to program is not the same thing as learning a programming language. Learning a programm…
    1,498 views
    Washu
    September 14, 2014
    A Simple C++ Quiz
    This is a very basic C++ quiz, it mainly tests a wee bit of knowldege that I've found some people who profess to have a mastery of C++ to be lacking. The answers should all be based on the C++ standard, and not your compiler's implementation.
    Use the following code snippet to answer questions 1 thro…
    1,311 views
    Washu
    June 07, 2012
    Oh God, It gets even worse!
    So if you saw my last entry, it was a basic Win32 app that created a D3D11 device and cleared the display.

    Well, I've expanded upon it a wee bit more. If you're familiar with the SlimDX MiniTri11 sample this should look, erm... similar?

    Added some Macros to help me twiddle around in COM easier.


    .586
    .m…
    3,378 views
    Washu
    June 05, 2012
    When Boredom Strikes
    Washu does crazy things. In this case I wrote this up...


    .586
    .model flat, stdcall
    option casemap :none

    @ArgRev MACRO arglist:REQ
    LOCAL txt, arg
    txt TEXTEQU <>
    % FOR arg,
    txt CATSTR , <,>, txt
    ENDM

    txt SUBSTR txt, 1, @SizeStr( %txt ) - 1
    txt CATSTR , txt, >
    E…
    2,588 views
    Washu
    March 15, 2012
    The New C++ - functions
    C++11 significantly expanded the C++ standard library with a number of new libraries and functionality, which isn't actually all that new if you've used boost. These libraries add a great deal of needed functionality, although it still doesn't compare to the standard library you get with many other…
    6,036 views
    Washu
    March 06, 2012
    The New C++ - lambdas
    Ah lambdas. If you've used any functional languages, python, ruby, or C# (or many other languages), you are probably familiar with the concept of lambdas. However, if you've been doing C++ for a while and haven't used boost's lambda library then let me be the first to introduce you to the concept..…
    4,522 views
    Washu
    March 01, 2012
    The New C++, Part 2 - decltype
    Working with templates is annoying. Working with return types deduced from template arguments is even more annoying. Things quickly tend to spiral out of control, frequently requiring the introduction of typedef's just to make the code marginally more readable. More importantly though, its very dif…
    2,905 views
    Washu
    February 29, 2012
    The New C++, Part 1 - auto
    In this short series of entries I'm going to cover some of the new things that have been introduced into the C++ programming language with the latest standard. I will not be covering everything, as much of the new functionality has yet to be adopted or implemented in existing compilers, or are thin…
    5,465 views
    Washu
    February 26, 2012
    What the @#$% is wrong with Microsoft
    Have you seen the new UI for the next version of Visual Studio 11? No? Go take a look, then come back.

    Terrible isn't it? Makes you wonder just what the heck they were thinking when they were designing the UI.

    The thing is, its not that they had a bad idea. Cleaning up the UI, making it more user fri…
    4,570 views
    Washu
    September 15, 2010
    PAX Report - Saturday

    I PLAYED DRAGON AGE 2 AND IT WAS AWESOME!

    Right, so, day two of PAX (bit late I know).

    I went to check out the Duke Nukem booth, but the line was already closed off. So I couldn?t be bothered to see if they would open it again, I?m not THAT fanatical about Duke. Maybe when it was new.

    So instead I che…

    883 views
    Washu
    September 04, 2010
    PAX Report - Friday

    I flew up to Seattle on Thursday! Browsed around, found a decent Sushi place with some fairly decent sushi at a fairly decent price.

    Other than that, browsed around Seattle for a bit, scouted out the convention center, and checked into the hotel. Staying at the Renaissance again, same as last year. …

    1,008 views
    Washu
    August 26, 2010
    Building a SlimDX MiniTriangle sample with Direct3

    I generally don?t post huge code dumps, mainly because I find them more annoying and less helpful than some books/authors might. But you know, I?ve been playing with IronPython/SlimDX recently and decided to do up another SlimDX Sample (demonstrating DX11), except in IronPython this time. This will…

    1,262 views
    Washu
    April 26, 2010
    Is It Really A Bug For A Beginner To Be Using C-Strings
    Depends, but probably yes.



    A beginning programmer should be focusing on learning to program. That is: the process of taking a concept and turning it into an application. Problem solving, in other words. Learning to program is not the same thing as learning a programming language. Learning a programm…
    1,490 views
    Washu
    March 15, 2010
    GDC - It's over!
    Well, twas another fun year at GDC. Got to meet with the crew again and even found some new faces (like Trent's, M2tM's and Saruman's).

    I also met with this strange little mobile programmer named Scott Sebelius. Yeah, I dunno what that was all about either. [grin]

    Now it's time to get serious and act…
    1,051 views
    Advertisement

    Popular Blogs

    shawnhar
    Generalist
    101 Entries
    9 Followers
    15 Entries
    10 Followers
    johnhattan
    Programmer
    1,277 Entries
    47 Followers
    ApochPiQ
    Generalist
    628 Entries
    44 Followers
    dgreen02
    Generalist
    338 Entries
    56 Followers
    Advertisement