Reddit Reddit reviews Programming WPF

We found 3 Reddit comments about Programming WPF. Here are the top ones, ranked by their Reddit score.

Computers & Technology
Books
Computer Graphics & Design
Programming WPF
Used Book in Good Condition
Check price on Amazon

3 Reddit comments about Programming WPF:

u/Bozar42 · 9 pointsr/roguelikedev

Fungus Cave

Github repository, screenshot.

I'd like to share two things this week. First, I want to expand my C# toolkit, so I searched and purchased two books:

  • C# 7.0 in a Nutshell
  • Programming WPF

    I haven't read WPF yet. As for Nutshell, both the price and content is amazing.

    Second, I designed and implemented a field of view algorithm. It has following features:

  • It is not so complicated as recursive shadow casting.
  • Walls do not block LOS, but they make grids which are farther away from the observer darker.
  • You can easily add more obstacles in addition to walls and light sources.

    FOV is processed by three classes:

  • FieldOfView creates a 2D array. Each grid in the array can be of one of three status: Unknown, Visited and InSight. When drawing FOV, the first step is turning all InSight grids to Visited.
  • RenderSprite is the last step in drawing FOV. Every sprite checks its position in the observer's FOV status array and changes color accordingly: white for InSight, grey for Visited, and black for Unknown.
  • FOVRhombus reads observer's position as input and changes the FOV status array.

    distanceBoard:

    > 3 3 3 3 | 3 4 4 4

    > 2 2 2 3 | 2 2 # 4

    > 1 1 2 3 | 1 1 2 4

    > x 1 2 3 | x 1 2 3

    FOVRhombus creates another 2D array called distanceBoard. The algorithm changes FOV status in three steps:

  • Starting from observer's position, traverse the whole distanceBoard array and calculate the distance between observer and each grid. If the grid is a wall, push the position into a wallStack.
  • For each wall in the wallStack, check surrounding grids in a rhombus shape. If distance(grid, observer) is greater than distance(wall, observer), increases the grid's distance by 1 (or any positive number you like.)
  • For each grid in the distanceBoard, if the value is less than or equals to observer's max sight range, change the corresponding grid in FOV status array to InSight.

    Multiple walls cannot make the same grid even darker. If there are multiple obstacles that cast shadow, only the darkest shadow takes effect. If there are light sources, just reduce the distance.
u/jarjar87 · 1 pointr/csharp

Thank you for the response. I guess I have the same question for you so I will just copy and paste what I wrote to AberrantCheese.

Right now I am debating whether to get

Windows Presentation Foundations Unleashed

or

Programming WPF

I guess I just want the one that is less complex since I am a beginner.

On a side note, do I need to understand WPF and XAML before I proceed to MVVM?