(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
``` bash | |
$ curl -u <username> -d '{"scopes":["public_repo"],"note":"CI: demosite"}' https://api.github.com/authorizations | |
``` | |
``` bash | |
$ gem install travis | |
``` | |
``` bash | |
$ travis encrypt GIT_NAME=<Your_Name> --add |
<?xml version="1.0" encoding="UTF-8"?> | |
<opml version="1.0"> | |
<head> | |
<title>Graphics, Games, Programming, and Physics Blogs</title> | |
</head> | |
<body> | |
<outline text="Tech News" title="Tech News"> | |
<outline type="rss" text="Ars Technica" title="Ars Technica" xmlUrl="http://feeds.arstechnica.com/arstechnica/index/" htmlUrl="http://arstechnica.com"/> | |
<outline type="rss" text="The Tech Report - News" title="The Tech Report - News" xmlUrl="http://techreport.com/news.xml" htmlUrl="http://techreport.com"/> | |
<outline type="rss" text="Road to VR" title="Road to VR" xmlUrl="http://www.roadtovr.com/feed" htmlUrl="http://www.roadtovr.com"/> |
//Core Graphics method | |
CGDataProviderRef provider = CGDataProviderCreateWithURL((__bridge CFURLRef)fontURL); | |
CGFontRef graphicsFont = CGFontCreateWithDataProvider(provider); | |
CTFontRef coreTextFont = CTFontCreateWithGraphicsFont(graphicsFont, fontSize, /*matrix*/ NULL, /*attributes*/ NULL); | |
if (coreTextFont) { | |
NSFont *font = (__bridge NSFont *)coreTextFont; | |
[fonts addObject:font]; | |
CFRelease(coreTextFont); | |
} | |
CGFontRelease(graphicsFont); |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
### GameDev | |
* https://www.ea.com/frostbite/news/physically-based-sky-atmosphere-and-cloud-rendering |
// | |
// MARK: CGPoint op point/size/float | |
// | |
func -(l: CGPoint, r: CGPoint) -> CGPoint { return CGPoint(x: l.x - r.x, y: l.y - r.y) } | |
func +(l: CGPoint, r: CGPoint) -> CGPoint { return CGPoint(x: l.x + r.x, y: l.y + r.y) } | |
func *(l: CGPoint, r: CGPoint) -> CGPoint { return CGPoint(x: l.x * r.x, y: l.y * r.y) } | |
func /(l: CGPoint, r: CGPoint) -> CGPoint { return CGPoint(x: l.x / r.x, y: l.y / r.y) } | |
func -(l: CGPoint, r: CGSize) -> CGPoint { return CGPoint(x: l.x - r.width, y: l.y - r.height) } |
// Created by mrdekk on 24/12/2019. | |
// | |
// Original PHP code was taken here https://www.tonymacx86.com/threads/apple-intel-amd-ati-framebuffers.112299/post-1640375 and attributed to 'Pavo' | |
import Foundation | |
import Cocoa | |
let portMapping: [String: String] = [ | |
"02000000": "LVDS", | |
"04000000": "DVI-D", |
class AsyncOperation : Operation { | |
private var _isExecuting = false | |
private var _isFinished = false | |
override func start() { | |
guard !isCancelled else { | |
finish() | |
return | |
} |
Christopher Baus writes about his problems linking libstdc++ statically. Yes, making C++ binaries that will work properly in different Linux distributions is somewhat painful. The problem is not so much linking libstdc++ statically – it is just a library, after all – but the runtime support required by C++ code in general, to enable features like RTTI and exception handling.
The runtime support code used by different parts of a C++ application needs to be compatible. If one part of the program needs to dynamic_cast or catch objects provided by another, both parts must agree on certain implementation details: how to find vtables, how to unwind the stack, and so on.
For C++ and a few other GCC-supported languages with similar features, such details are specified by a C++ ABI. Whenever the ABI used by GCC changes you'll end up with incompatible libraries produced by the different GCC versions. The same is true for plain C, but the C ABI is much simpler and has been around a