最近のバージョンのWordにはPDF出力機能が入っていて、簡単にPDFを作れます。資料を作成したアプリを持っていない人でも、PDFにして渡せば開いたり印刷することができるため非常に便利です。
macOS/iOSアプリ・SDK・ミドルウェア開発が専門の開発者です。プログラミング情報を公開しています。
アールケー開発代表。macOS/iOSアプリ/SDK/ミドルウェア開発が専門の開発者。ObjC/Swift/C++使い。豊富な開発実務経験を基に、教育コンテンツ開発、技術書執筆、技術指導、技術セミナー講師、企業内研修講師、行政・自治体職員研修講師も行います。
|
https://twitter.com/studiork |
---|
1件〜100件
Flutter3.0がリリースされました。今回のバージョンでは、macOSのデスクトップアプリの開発も正式に対応しました。私はMacアプリ開発者なので興味津々なのですが、まずは、インストール済みのFlutterのアップグレードからです。
Arnoldのレンダリング設定でデフォルト設定から変更した方が良さそうだなと思ったものや、一時的に他の値に変更しても普段は戻した方が良さそうだなと感じた設定のメモです。
MayaのAi Toonシェーダーを使うと漫画のような感じにレンダリングされます。この記事ではAi Toonシェーダーを使い方の紹介です。
レンダラーはレンダリングを行うプログラムです。レンダリングは3Dのデータ、例えば、頂点、エッジ、フェース、アトリビュート、テクスチャー、カメラ(視点)といった情報を元に、2次元の画像を描画する処理です。
こちらのブログも含めて、いくつかのブログを仕事用のブログに統合してから、自分自身で学習したことを仕事のブログに書こうと思っていたのですが、テーマが合わず、書きづらいなと感じていました。
Ubuntu Server に限らずですがシステム運用では、他のOSと同様にセキュリティアップデートの適用など、可能な限り最新版をインストールしていくことが重要だと思います。
ARKitは物理シミュレーション機能を持っています。アプリ内で動的に作成したモデルでも、USDZファイルから読み込んだモデルでも、物理情報やコリジョンの設定をすれば、重力も適用される物理シミュレーションが利用できます。
執筆中の「基礎から学ぶARKit」のCHAPTER 8ではコリジョンについて解説します。コリジョンは仮想コンテンツが別のコンテンツやシーン再構築によって構築されたメッシュとの衝突したときにイベントが発生する機能です。
Maya 2022にはUSD及びUSDZファイルを出力できるプラグインが付属しています。
ARKitの顔のトラッキング機能について、どのくらい精度良く素早くトラッキングできるのかを実感できるのが、これだと思います。ARKitで検出された顔をRealityKitでメタル調にレンダリングしています。
macOSに組み込まれているシステム整合性保護 (SIP: System Integrity Protection) 機能を一時的に無効化して、再度有効化するときの手順についてです。
ARKitで物体検出を行うためには、先に物体をスキャンしておいて、特徴点データを作っておく必要があります。
ここ最近のメインMacはMacBook Proなのですが、キーボードはHHKB Professional Hybrid Type-Sを使っています。
Macに接続するUSB機器と通信するプログラムを開発するときに、OSのバージョンによってコードやバイナリが異なるときにデバッグ環境をどうするかというお話しです。
Parallels Desktop 17.1 + Apple Silicon + Montereyゲストを試してみた
Paralles Desktop 17.1 で M1 Mac でも macOS をゲストOSとして使えるようになりました。どんな感じになるのか試してみました。
Hyper-Vで論理ボリュームのサイズが、仮想ディスクの半分しかないということがあります。Hyper-Vの仮想マシン上にUbuntuサーバーをインストールしたのですが、ルートボリュームが半分しかないということに気が付きました。
執筆中のARKit解説書のサンプルアプリで使用するカードデータを作成しました。サンプルアプリはこの画像をプリントアウトしたものをカメラで読み取らせてARコンテンツを表示します。
(解決) MagicKeyboardのトラックパッドが反応しない
iPad Pro 2021 に接続した Magic Keyboardのトラックパッドが突然、反応しなくなってしまいました。解決方法次の手順で私の場合は直りました。iPadとキーボードを切断する。
GitLabとElasticsearchを組み合わせたGitLab Advanced Searchをセットアップする
GitLabには組み込みの検索機能が2種類有ります。Free Tierでも使用可能な通常の検索機能とPremium Tier以上でのみ使用可能なGitLab Advanced Searchという検索機能です。
GitLabで管理しているドキュメントにはあなたは何を使っていますか?最終成果物を外部に渡したいときにはWordやExcel、PDF、Markdownなどをつかっていると思います。
Android StudioやAppCodeの割り当てメモリを変更する
このサイトの管理者の本業はソフトウェア開発です。その中でもMacやiOSアプリの開発が専門です。仕事でソフトウェア開発を行う方以外の方でも、プログラミングを学習する方が増えてきているように思われます。
iPad Pro 2021 に Magic Keyboard を導入
iPad Pro 2021 を導入しました。MacBook Pro 2020 M1 と同じM1チップを搭載した iPad Pro はとても快適です。今回はそんな iPad Pro をもっと便利に使いたい、講演や講師の仕事、打ち合わせなど、Xcodeでのコーディングが必要ないときには、MacBook ProではなくiPadを持って行きたい!そのためには高機能なキーボードが必要です。そこで導入したのが純正の Apple Magic Keyboard です。
最近のバージョンのWordにはPDF出力機能が入っていて、簡単にPDFを作れます。資料を作成したアプリを持っていない人でも、PDFにして渡せば開いたり印刷することができるため非常に便利です。
「TechGaku チュートリアル」というブログサイトを新たに公開しました。TechGaku チュートリアルでは、チュートリアル形式で色々なアプリの使い方や設定などを解説するブログです。
数ページになる書類をWordで作成するときは、「1. 概要」「1.2. 前提条件」などのように、見出しに段落番号や通し番号を付けると分かりやすい資料になります。
Xcodeでフレームワークや共有ライブラリの出力シンボルを制御する
Xcodeのデフォルト設定では、フレームワークや共有ライブラリで実装した関数や定数のシンボルがすべて出力されます。この記事ではすべてのシンボルが出力されてしまうことで起きる問題や制御方法について解説します。
SwiftのUnsafeMutableBufferは[]演算子よりも速い
UnsafeMutableBufferを使った記事を書いていて、ふと疑問に思った事があります。UnsafeMutableBufferを使ったコードと、[]演算子を使ったコードはパフォーマンスがどの程度変わるのか?です。
SwiftでCのポインタのインクリメント・デクリメントのコードを書き換える
C/C++でポインタを使ったバッファアクセスを行うときに、頻繁に使用するのがポインタのインクリメントとデクリメントです。ポインタの加算・減算なので、参照位置を変更することができ、連続したバッファで使用して順次アクセスができます。
flutter doctorで指摘されたAndroid Studioのセットアップ方法のまとめです。
flutter doctorで指摘された M1 Mac への JDK のインストールです。Flutterのセットアップ方法については次の記事を参照してください。
FlutterをM1 Mac上で使おうとすると、少し前までは色々動かないという状況だったようですが、アップデートが進み、問題が少なくなったようです。
昔作ったプログラムをSwiftで書き直す過程で、ポインタを使った処理の書き換えが必要になりました。このときに、どのように書いたかをまとめてみました。
SwiftUIには2種類のライフサイクルがあります。 UIKit App Delegate SwiftUI Appこの記事では、この2種類のライフサイクルの違いについて解説します。
M1チップを使ったMacが登場し、しばらくぶりにMacのアプリやフレームワークにもUniversal Binaryが使われるようになりました。
皆さんはドキュメント管理はどのようにされていますか?ソースコードは Git で管理しています。 Markdown で書いているドキュメントであれば Git で管理していることが多いと思います。
SwiftからC言語の関数を直接使うためには、Swiftでメモリバッファを考慮したコードを書く必要があります。Unsafe系のタイプを使う必要があり、分かりづらいコードが多くなります。この記事ではコード例を紹介します。
Hyper-V を使った Ubuntu Server のインストール
Hyper-Vを使い、仮想マシンに Ubuntu Server をインストールする方法を解説します。この記事では Windows Server 2016 を使用しています。Hyper-V が既にインストールされていることを前提にしています。
Windows Server 2016 への Hyper-V のインストール方法
Windows Server 2016 に Hyper-V をインストールするには以下の様に操作します。基本的には画面の指示に従っていくだけでインストールできます。(1) サーバーマネージャーを起動する。
このブログでも前に扱ったOpenCVという画像処理のライブラリがあります。OpenCVには色々な画像処理のアルゴリズムが実装されていますが、実際に使って見ると、自分で実装したときよりもかなり早いなぁということがあります。
Dockerでコンテナ化したnginxで、スタティックなコンテンツだけではなく、動的なコンテンツを表示したくなり、docker+nginxの環境で更にphpを追加しました。その方法をまとめました。
XcodeでGoogle Test (gtest) を使えるようにセットアップする
Xcodeにはユニットテストを実行する機能があります。Xcodeから実行できるユニットテスト機能はXCTestフレームワークのチェック関数を使って、クラスやメソッドの戻り値が期待値通りになっているかをチェックします。
Gitはファイルの履歴を管理しています。この機能のおかげで同じリポジトリを参照する人は、別の人が行った変更を取り込むことができます。
【Docker】 macOS Catalina 10.15 で使うときはプライバシー設定も確認する
Dockerでコンテナに、ホスト側のフォルダをマウントさせて、共有フォルダとして使う機能があります。この機能でマウントさせるフォルダにアクセスできないときのチェック箇所についてです。
定期的に実行されるバッチスクリプトなどで問題が起きたときの記録や、問題が起きていなくても、実行したことを記録したいときなどには、ログを出力することが一般的です。
【Python】ArgumentParserでコマンドライン引数を取得する方法
Pythonでシェルスクリプトを作ったときに、ArgumentParserクラスを使うと、簡単にコマンドライン引数を解析して取得できます。ArgumentParserクラスは、次のような機能を持っています。
macOS High Sierra 10.13からファイルシステムがAPFSに変わりました。それにより、ディスクユーティリティが作成するディスクイメージファイルのファイルシステムもAPFSになっています。
Finderと同じ方式のZipファイルをターミナルやシェルスクリプトで作る
macOSのFinderにはファイルやフォルダを圧縮してZipファイルを作る機能が入っています。このZipファイルはWindows上で作成するZipファイルとは少し異なります。
インストーラ形式で配布しているアプリでは、アプリ本体のNotarization対応の他に、インストーラもNotarizationに対応する必要があります。
Combine入門 | Combineを使ってネットワーク接続する方法
この記事では、Combineを使ってネットワークアクセスする方法を解説します。Combineが初めての方やCombineの他の例については、次の記事もご覧ください。
Combine入門 | 独自のタイプをCombine対応にする
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。少し分かりにくいのですが、重要なフレームワークです。
Apple Notarization Service に対応するためのXcodeの設定
Apple Notarization Service に対応させて、アプリの公証を受けるためには、いくつかの方法があります。
Combine入門 | CombineでTimer処理を行う方法
TimerもCombineに対応しています。Timerで定期的に実行される処理をCombineを使って設定出来るようになっています。この記事ではTimerの処理をCombineで行う方法についてです。
Combine入門 | CombineでNotificationを受け取る方法
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。重要なフレームワークです。Combineを使った他の例については以下の記事をご覧ください。
Webサーバーと通信するクライアントアプリのエラー処理で必ず必要になるのがHTTPのステータスコードです。色々なコードが定義されていますが、これだけ知っていれば、とりあえずは大丈夫だと思われるものをまとめました。
作っているアプリからHTTPに接続するときに、ネットワークの速度を制限したいことがあります。例えば、とても遅いネットワークや日本国外のインフラが整備されていない地域から接続されるようなときに、正しく動くかを確認したいようなときです。
OpenCVはオープンソースの画像処理やマシンラーニングを行うためのライブラリです。高機能で多くの機能を持っていて、画像処理やマシンラーニングの処理を一から全て実装するよりも効率的に開発が行えます。
OpenCVはオープンソースの画像処理やマシンラーニングを行うためのライブラリです。高機能で多くの機能を持っていて、画像処理やマシンラーニングの処理を一から全て実装するよりも効率的に開発が行えます。
Parallels Desktopで古いmacOSゲストをセットアップする
この記事で使用しているParallels DesktopのバージョンはParallels Desktop 15です。昔からずっと使われている製品では、動作対象のOSが極端に古い場合があります。
Homebrewは元々はMac用のパッケージマネージャーです。そのHomebrewがv2.0からLinuxを正式サポートしました。同時に、WSLも正式にサポートしました。
WSL (Windows Subsystem for Linux) のセットアップ方法
2019年2月2日にリリースされたHomebrew v2.0から、公式サポート環境にWindows 10 (WSL) と Linux が加わりました。
macOS Big Sur 11以降でドライバ(KEXT)の許可を取り消す方法
macOSではドライバ(KEXT)は、ユーザーが許可しないとロードされません。ドライバと通信するアプリを開発中のときなど、ユーザーが許可していない状況や、ドライバをインストールする前の状態を作り出したいときがあります。
macOSでのドライバ(KEXT)のロード可否判断のフローと解説です。
MacPro 2013からHDMIで60Hzのリフレッシュレートにしたい
私が使っているBenQのディスプレイは、複数のポートを持っていて、複数のマシンと接続できます。
今だと開発のインフラにはGitHubだったり、Dropboxだったり、色々なクラウド上のソリューションがあります。しかし、契約上の理由やデータ容量の問題などでクラウドを使ったシステムには入れることができないデータが沢山あります。
MacBook Pro 2020 M1 のために Thunderbolt 3 Dock を導入
MacBook Pro 2020 M1が届いて数日。方々のベンチマークで見たとおり高性能で完成度の高いマシンだと感じています。
小学校でのプログラミング教育の必修化など、プログラミングやプログラミング的思考が注目を浴びるようになってきました。そのような中、「プログラミング的思考力養成研修」という研修の講師を務めました。
macOS Big Sur 11.0.1 が2020年11月13日にリリースされました。それを受けて一気に忙しくなってきました。新刊のMetal解説書の仕上げ作業が始まったからです。
「ブログリーダー」を活用して、林 晃さんをフォローしませんか?
最近のバージョンのWordにはPDF出力機能が入っていて、簡単にPDFを作れます。資料を作成したアプリを持っていない人でも、PDFにして渡せば開いたり印刷することができるため非常に便利です。
「TechGaku チュートリアル」というブログサイトを新たに公開しました。TechGaku チュートリアルでは、チュートリアル形式で色々なアプリの使い方や設定などを解説するブログです。
数ページになる書類をWordで作成するときは、「1. 概要」「1.2. 前提条件」などのように、見出しに段落番号や通し番号を付けると分かりやすい資料になります。
Xcodeのデフォルト設定では、フレームワークや共有ライブラリで実装した関数や定数のシンボルがすべて出力されます。この記事ではすべてのシンボルが出力されてしまうことで起きる問題や制御方法について解説します。
UnsafeMutableBufferを使った記事を書いていて、ふと疑問に思った事があります。UnsafeMutableBufferを使ったコードと、[]演算子を使ったコードはパフォーマンスがどの程度変わるのか?です。
C/C++でポインタを使ったバッファアクセスを行うときに、頻繁に使用するのがポインタのインクリメントとデクリメントです。ポインタの加算・減算なので、参照位置を変更することができ、連続したバッファで使用して順次アクセスができます。
flutter doctorで指摘されたAndroid Studioのセットアップ方法のまとめです。
flutter doctorで指摘された M1 Mac への JDK のインストールです。Flutterのセットアップ方法については次の記事を参照してください。
FlutterをM1 Mac上で使おうとすると、少し前までは色々動かないという状況だったようですが、アップデートが進み、問題が少なくなったようです。
昔作ったプログラムをSwiftで書き直す過程で、ポインタを使った処理の書き換えが必要になりました。このときに、どのように書いたかをまとめてみました。
SwiftUIには2種類のライフサイクルがあります。 UIKit App Delegate SwiftUI Appこの記事では、この2種類のライフサイクルの違いについて解説します。
M1チップを使ったMacが登場し、しばらくぶりにMacのアプリやフレームワークにもUniversal Binaryが使われるようになりました。
皆さんはドキュメント管理はどのようにされていますか?ソースコードは Git で管理しています。 Markdown で書いているドキュメントであれば Git で管理していることが多いと思います。
SwiftからC言語の関数を直接使うためには、Swiftでメモリバッファを考慮したコードを書く必要があります。Unsafe系のタイプを使う必要があり、分かりづらいコードが多くなります。この記事ではコード例を紹介します。
Hyper-Vを使い、仮想マシンに Ubuntu Server をインストールする方法を解説します。この記事では Windows Server 2016 を使用しています。Hyper-V が既にインストールされていることを前提にしています。
Windows Server 2016 に Hyper-V をインストールするには以下の様に操作します。基本的には画面の指示に従っていくだけでインストールできます。(1) サーバーマネージャーを起動する。
このブログでも前に扱ったOpenCVという画像処理のライブラリがあります。OpenCVには色々な画像処理のアルゴリズムが実装されていますが、実際に使って見ると、自分で実装したときよりもかなり早いなぁということがあります。
Dockerでコンテナ化したnginxで、スタティックなコンテンツだけではなく、動的なコンテンツを表示したくなり、docker+nginxの環境で更にphpを追加しました。その方法をまとめました。
Xcodeにはユニットテストを実行する機能があります。Xcodeから実行できるユニットテスト機能はXCTestフレームワークのチェック関数を使って、クラスやメソッドの戻り値が期待値通りになっているかをチェックします。
Gitはファイルの履歴を管理しています。この機能のおかげで同じリポジトリを参照する人は、別の人が行った変更を取り込むことができます。
テーマは同じ趣味や興味を持つブロガーが共通のテーマに集まることで繋がりができるメンバー参加型のコミュニティーです。
テーマ一覧から参加したいテーマを選び、記事を投稿していただくことでテーマに参加できます。