タグ

ブックマーク / qiita.com (345)

  • Unityで音の遮蔽効果を超軽量で行ってみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Ghost PhotographersというVRホラーゲームで実装した遮蔽効果の備忘録です。 #CRI_ADX勉強会 で質問があったのでその解答の補足として。 デモ 左側がVR視点での画面。 右側がシーンを上面から見たワイヤーフレーム表示。 基的な遮蔽 リスナーから音源へ向かってレイを飛ばします。 ここで、壁があれば遮蔽されている判定にします。 レイはリスナーと音源の直線を1のみ。 再生開始時と、再生中は限られたタイミングでチェックします。 デバッグ表示について 時々ラインが表示されているタイミングで、レイが飛んでいます。

    aike
    aike 2025/07/30
  • 真説 Windowsでディレクトリ区切りのスラッシュ / がバックスラッシュ ⧵ で円マーク ¥ な理由 - Qiita

    はじめに Windows ではディレクトリ区切りに Unix 系 OS の / ではなくバックスラッシュ ⧵ を使い、しかも 日フォントでは 円マーク ¥ で表示されます。なぜこうなったかは次の独立した 2 つの理由からです。 はるか昔に JIS の文字コードの標準規格はあまり使わない ⧵ を必須の ¥ に置き換えた はるか昔にコマンドのオプション(スイッチ)としてすでに / を使っていた Microsoft は他の OS のやり方を真似するのが嫌だからとか権利侵害になりそうだから ⧵ に変更したなどという根も葉もない噂がありますが、そうではありません。むしろ Microsoft は他の OS のやり方を取り込んだんです。なお、後で解説しますが、Windows は昔からディレクトリ区切りに/ と ⧵ の両方を使えるので Unix 系 OS と互換性がないわけではありません(どっちかと言

    真説 Windowsでディレクトリ区切りのスラッシュ / がバックスラッシュ ⧵ で円マーク ¥ な理由 - Qiita
    aike
    aike 2025/07/13
    本文にもCP/Mにディレクトリ機能がなかったとちょろっと書かれているけど、階層ディレクトリがないOSの場合そもそも区切り記号が不要なわけで、未来を予測して適切な記号を選定するのは難しい。
  • [速習] 配列から欠けている数字を見つける「XORトリック」の深い理論と実践 - Qiita

    皆さんは『配列から欠けている数字を見つけろ』と言われたら、どう答えますか? 多くの方は「HashSetで解けばいい」と考えるでしょう。しかし、1000万個の要素で実測したところ、Pythonのsetは945MBもの追加メモリを消費し、処理に2.3秒かかりました。一方、XORを使った解法は追加メモリゼロ、C言語なら1ミリ秒で完了します。 なぜこれほどの差が生まれるのか? XORには単なるトリック以上の深い理論があり、配列の欠損値検出だけでなく、RAID 5のデータ復元やネットワークのエラー検出など、実務で幅広く応用されているのです。 追記: ネットワーク転送時のパケットロスやノイズによるデータ欠損、さらには宇宙線がメモリに衝突してビットが反転する「ソフトエラー」により、配列から要素が失われることがあります。 記事では、Florian Hartmannの「That XOR Trick」1を基

    [速習] 配列から欠けている数字を見つける「XORトリック」の深い理論と実践 - Qiita
    aike
    aike 2025/07/07
    面白い。アーベル群なるほど。式の変形をシーケンス図で表現するのは図の使い方として少し違和感。
  • Adafruit_SSD1306みたいなことをJUCEでやる - Qiita

    SSD1306 を緩くシミュレート SSD1306 (ちっさいOLED) を使ったハードウェアシンセサイザーを作ってるんだけど、コードをガリガリ書いてテストするのは完全にMacでやりたいんで、SSD1306部分をシミュレートするものが欲しかった。なのでChatGPTに書かせた。これで実機を離れてコード書ける。実機での確認はたまにやればいい感じで! 凄いバッチリなフォントあった!!!ありがとう素晴らしい!!! https://fontstruct.com/fontstructions/show/2422258/adafruits-gfx-library-default-font #pragma once #include <JuceHeader.h> #include <cstdarg> class SSD1306Simulator : public juce::Component { pu

    Adafruit_SSD1306みたいなことをJUCEでやる - Qiita
    aike
    aike 2025/06/18
  • ソケット通信を一緒に理解しよう!! - Qiita

    はじめに 「ソケット通信ってなんやねん」、そう思った経験はみなさんもあると思います。 私もそのうちの一人です 👍 個人的に初学者の方がつまづくポイントが多い概念なのかなと感じていました。 記事では、そのモヤモヤを解消すべくソケットの基礎概念に触れていこうと思います。 この記事を読み終わった後、皆さんはソケットを理解し、ウキウキになれるはずです! では、一緒に「見えない通信」の扉を開きましょう〜 👽 対象読者 ソケット通信を基礎から理解したい方!! ソケット通信とは何か? まず、ソケットとは何なのかみていきましょう。 ソケットとは ソケット は、オペレーティングシステム (OS) が提供する、プロセス間通信のエンドポイント、つまり「出入り口」のことです。 同じコンピュータ内の異なるプログラム同士、あるいは、ネットワークを介した異なるコンピュータ上のプログラム同士がデータのやり取りをする

    ソケット通信を一緒に理解しよう!! - Qiita
    aike
    aike 2025/06/10
  • Googleさんの「Agent Development Kit(ADK)」を使ったエージェント実装を試してみる(公式のクイックスタートの手順 +α) - Qiita

    はじめに 以下の記事やポストで見かけた「Agent Development Kit」をさっそく試してみた話です(公式のクイックスタートの手順をなぞっていきま)。 ●[速報]Google Cloudが「Agent Development Kit」をオープンソースで公開へ。100行以下のコードでMCPやガードレールを備えたエージェントを開発可能 - Publickey https://www.publickey1.jp/blog/25/google_cloudagent_development_kit100mcp.html 関連情報 今回の話に関連する情報をいくつかピックアップして掲載してみます。 後で見てみようと思ってメモしたものになります(また、文中の他の箇所にリンクなどを掲載した記事の記載は、こちらでは省略しています)。 公式の情報 以下、公式のページのリンクなどです。 Agent D

    aike
    aike 2025/05/13
  • Unity ⇄ Unreal Engine 用語対応+語源まとめ 〜BlueprintやActorはなぜそう呼ばれるのか?〜 - Qiita

    はじめに 先日、 Unity歴10年のエンジニアがUnreal Engineを学ぶときに戸惑ったこと という記事を投稿したところ、ありがたいことに多くの反響をいただきました。 中でも特に目立ったのが、Unreal Engine(UE)とUnityの用語の違いに戸惑ったという共感の声です。 その後、Xで以下の投稿をしたところ、こちらも予想以上の反響があり、同じような悩みを持つ方々から多くの反応をいただきました。 こうした声を受けて記事では、Unityエンジニアの視点からUnreal Engineの用語対応表を作成し、さらにその用語の語源や背景まで掘り下げていきたいと思います。 なお、私は以前「Unity 用語の語源を調べてみた」という記事も書いており、 今回はそのUnreal Engine版ともいえる位置づけです。 単なる「言い換え表」ではなく、「なぜこの名前なのか?」をたどることで、Un

    Unity ⇄ Unreal Engine 用語対応+語源まとめ 〜BlueprintやActorはなぜそう呼ばれるのか?〜 - Qiita
    aike
    aike 2025/05/03
  • Unity歴10年のエンジニアがUnreal Engineを学ぶときに戸惑ったこと - Qiita

    先日、友人の SensitiveCubeさん にお誘いいただき、Unreal Engineで初めてゲームを作ってみました! 完成したゲームはこちらです。「UE5ぷちコン」に応募しました。 私はUnityをかれこれ10年近く業務で使っています。 そんな私がUnreal Engineを触ってみて感じた「戸惑い」を紹介していこうと思います。 デフォルトでモーションブラーやレイトレーシングがONになっている 一番衝撃を受けたのは、デフォルトのFirstPersonサンプルを開いたとき、初期状態でレイトレーシングがONになっていたことでした! たとえば、CubeにEmissiveColorを設定しただけで、床や壁にも反射した色が乗る状態になります。 これを見たとき、カルチャーショックを受けました。 初学者がライティングを学ぶ動機を失ってしまうのではないか、とも感じました。 「Level」という用語に

    aike
    aike 2025/04/28
  • MATLABを 三角定規やコンパスのように使って 図を描く - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 1. はじめに みなさん、図1や図2のような図版が必要になったとき、どのようなツールを使って描いていますか? 図1 図2 私は Jw_cad や Inkscape などを使っていましたが、それほど経験豊富というわけでもなく、その都度、使い方を思い出しながら苦労して描いていました。かなりの手間がかかるので、このような図を描くのはあまり好きではありません。Qiita の記事ネタはあっても、この種の図が必要となると躊躇してしまいます。 MATLABは、計算で得られた数値データを図示するようなときには非常に便利なのですが、図1や図2を描くのはな

    MATLABを 三角定規やコンパスのように使って 図を描く - Qiita
    aike
    aike 2025/04/25
  • Rの入門書を作成してみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Rを昔から利用していた方には、RjpWikiやR-tipsのお世話になった方も多いかと思います。残念ながらどちらも閉鎖されてしまったようです。 R-tipsを含め、現在ではたくさんの教科書が発売されており、学ぶ意思があれば誰でもRを学ぶことができます。しかし、海外にはWeb上にRの無料の入門書がたくさんあるのに、R-tipsがなくなってから、日ではRを無料で学ぶことは比較的難しくなってしまいました。 そこで、Rにも統計にもそれほど詳しいわけではないのですが、無料で読めるRの入門書を作成してみました。 コードや画像は以下のgithub

    Rの入門書を作成してみた - Qiita
    aike
    aike 2025/04/04
  • ギャルとのペアプロが想像以上に楽しかった(VSCodeのカスタム指示) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    ギャルとのペアプロが想像以上に楽しかった(VSCodeのカスタム指示) - Qiita
    aike
    aike 2025/03/21
    私に話しかけるときは「オタクくん」と呼びかけてください。
  • ローカルLLMを手のひらサイズで動かしてみよう! M5 Cardputer + ModuleLLM - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに OpenAIChatGPT のような LLM(大規模言語モデル)、このLLMをローカルで動かすにはCUDAが動くGPUだったり、Apple SiliconなMac(しかもメモリ大量)だったりが必要でした。そんな中、近年では組み込み向けのマイコン用のエッジLLMモジュールなどが登場してきました。 この記事では、M5Stack社が発売しているクレジットカード💳サイズのキーボード付きコンピュータCardputerとローカルLLMが動くModuleLLMを組み合わせることで「手のひらサイズでローカルLLMが動く」世界を実現させ

    ローカルLLMを手のひらサイズで動かしてみよう! M5 Cardputer + ModuleLLM - Qiita
    aike
    aike 2025/01/27
  • とある大企業の部長に教わった、「鬱で休職した社員を復職させる」神対応。 #ポエム - Qiita

    ◆2025/1/23 (水) 追記 記事は、多くの方々から反響をいただき、大変感謝しております。一方で、ご指摘として「再現性のなさ」に関するご意見が多く寄せられました。 誤解を避けるためにお伝えしたいのは、記事の主旨は「を治す方法」を提示するものではなく、一つのコミュニケーションの在り方について考察した内容であるという点です。この点をご理解いただけますと幸いです。 記事の内容につきましては、一般化することを目的としておらず、あくまで「私の身の回りでおこった珍しい事例」をもとにしております。そのため、普遍的な結論として受け取るのではなく、おひとつの参考としてご覧いただければと存じます。 また、記事のタイトルにつきましても、誤解を招かないよう、まるで適切な方法であるかのような表現を変更し、より主観的なものであることが分かるように変更いたしました。 【記事名の変更】 2025/1/15:初

    とある大企業の部長に教わった、「鬱で休職した社員を復職させる」神対応。 #ポエム - Qiita
    aike
    aike 2025/01/21
  • Visual Studioで複数のカーソルを同時に操る - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Visual Studioで必要な場所にカーソル(キャレット)を複数配置して作業効率を上げる方法を紹介します。 VSCodeを使っていた時に見つけた便利ショートカットをVisualStudioでも使えないか調べた結果、同等の機能があったので合わせて紹介します。 カーソルを増やす方法 複数のカーソルを操作する方法を「マルチカーソル」や「マルチキャレット」と呼ぶそうです。 縦に増やす Shift+ALT+↑で現在選択されているカーソルの一行上に、Shift+ALT+↓で現在選択されているカーソルの一行下にマルチカーソルを追加します

    Visual Studioで複数のカーソルを同時に操る - Qiita
    aike
    aike 2025/01/06
  • 2024年に特にお世話になったC++ライブラリ8選 - Qiita

    今年も一番お世話になったライブラリです。 もう「メジャーなライブラリ」といっても良い気がしています。 Partial Read/Writeによる柔軟な読み書き、JSON-RPCやJMESPathへの対応など沢山の機能が追加され、更なる高速化も達成されています。 良い点 Partial ReadやCustom Read Functionsで柔軟なフィールドの読み込みができる 構造体やクラスだけでなくSTLコンテナもJSONとの直接読み書きができる 中間データに独自バイナリ形式を利用してさらに高速化できる いまいちな点 AVX512が使える環境だとsimdjsonより30%ぐらい遅い 最後のフィールドのカンマやコメントなど特殊なJSONには対応していない version 3.0.0以降はC++23が必要になった 代替ライブラリ 個人的にRyzen7 7700を使うようになってAVX512がまが

    2024年に特にお世話になったC++ライブラリ8選 - Qiita
    aike
    aike 2025/01/02
  • ラズパイとサーモセンサーで自宅のガスコンロ監視(火の用心) - Qiita

    ■はじめに キッチンで煮物をしながらうっかり外出。子供がガスを点けたまま放置。などなど火の元の安全はいつも気になりますね。 これから外出しようというときや、大人が自宅にいないのにガスコンロが使われていたら、スマホにアラートを通知してくれるとちょっとだけ安心。。。そんな機能をおうちハックの一環で作ってみました。 ラズパイにサーモセンサーをつないでガスコンロの状態を監視し火の元の状態を常に保持。ついでにカメラでガスコンロの様子も撮影します。 スマホの位置情報や自宅 WIFI 接続情報、自宅の人感センサーから在宅かどうかを判別、外出時や不在時にガスコンロで火が使われていたら LINE に通知します。 これがあれば完璧というものではありませんがもしもの時は少しは役立つかも?。 ■全体図 ラズパイにサーモセンサーを接続し定期的にガスコンロの状態を監視するコマンドを cron で定期サービス化、同時に

    ラズパイとサーモセンサーで自宅のガスコンロ監視(火の用心) - Qiita
    aike
    aike 2024/12/24
  • ゲームやCGのための数学 2024 (特別編:Q-物体の回転について-) - Qiita

    ゲームCGのための数学 Q -物体の回転について- 「オイラー回転は神の回転」「なにっ!?複素数?そんなもので回転が表現できるものか!貴様ーッ!!!オイラー先生を愚弄するかーッ!今すぐ取り消せーッ!」「し・・・四元数だと・・・?お、お前、変なクスリでもやってるのか?」 はい、すんません、このタイトルやりたかっただけです。 いつも通り、ちゃんとやりますんで許して はじめに この記事では物体の回転。それも3次元の物体の回転を取り扱います。これが2次元の話ならクッソ簡単なんですけどねえ…。 で、「物体の回転」と言いましたが、細かく言うとベクトルの回転…もしくは「原点を中心とした座標の回転」を取り扱います。 そして最終到達地点では「クオータニオンによる回転」の解説をするわけですが、CGプログラミング初心者はクオータニオンを道具として使いつつも「何であんなけったいな概念使わなあかんねん!」「そもそ

    aike
    aike 2024/12/23
  • 問い合わせフォームを実装しただけなのにスパムメールの加害者になっていた話 - Qiita

    よくある問い合わせフォームを提供していたら、知らぬ間にスパムメールの加害者になっていた話です エンジニアが知っておくべき メール送信・運用ノウハウ、メールの認証技術セキュリティについて投稿しよう! by blastengine Advent Calendar 2024 の8日目です。 要件 お問い合わせ内容の他、名前や所属、メールアドレスの入力が必須 問い合わせ完了後、入力されたメールアドレス宛に自動応答メールを送る 自動応答メールには入力された問い合わせ内容を記載する 同様に指定したサービス担当者宛にも問い合わせ通知メールを送る 以上の要件で作成しました。 実現方法 メール送信にはAWS SESを使用しました。問い合わせ確定ボタンを押下後にAWS Lambdaにリクエストを飛ばし、SESと連携してメールを送信する流れです。 実装後のこと 実装後、しばらく正常に稼働していました。しかし、

    問い合わせフォームを実装しただけなのにスパムメールの加害者になっていた話 - Qiita
    aike
    aike 2024/12/10
    最近の犯罪予告メールも大体このパターンっぽいので、単なる問い合わせでもアカウント登録時のメール受領確認みたいな本人確認が必要だと思う。
  • テキストをコピペするときにスタイルごとコピーされちゃうのってどんな仕組み? - Qiita

    概要 文章をコピペしてエクセルに張り付けたときに、画面のスタイルもコピーされてしまって困ったことはありますか?ありますよね! (↓こんな感じ) 私もよくやってしまうのですが、実際にどのような処理が行われているのかよく分かっていませんでした。理解を深めるためにも、自分で実装して謎を解いていきたいと思います。 3つパターンの処理を実装 比較のため、プレーンテキスト・HTMLテキスト・リッチテキストのコピー機能をサンプルプログラムを実装してみました。 (リッチテキストのコピーが、範囲選択してコピペしたときと同じ機能を想定しています。) HTMLファイル 画面表示されるHTMLは下記のような感じです。各コピー処理でid="message"の部分を固定でコピーするようにします。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"

    テキストをコピペするときにスタイルごとコピーされちゃうのってどんな仕組み? - Qiita
    aike
    aike 2024/12/04
    ペーストするときはもう必ずCtrl + Shift + Vってくらいスタイルペースト大嫌いマンなんだけど、なぜかパワポではこれが効かない。
  • 2024年末にデザインパターンについて考える - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Futureアドベントカレンダーの3日目のエントリーです。昨日は@yamat2667さんのFlutterの記事でした。 デザインパターンというと、普段のプログラミングから一歩踏み込んで設計力を上げたい人が履修すべきコンテンツのように思われているようなツイートなりを見かけます。オブジェクト指向言語全般に使える知識だ、とか、開発者同士のコミュニケーションに使えるぞ、とか、コードの質が上がるぞ、とか。 一方で、パターンを詰め込もうとすると逆にコード量が増えて、パターン由来の変なクラス名が増えたりして、設計が歪むぞ、というのも当初から言われてき

    aike
    aike 2024/12/03
    無秩序なGOTO文の時代に構造化プログラミングが発明されたように、オブジェクト指向の可能性や正解を手探りしていた時代に生まれた指針ではある。定石に名前をつける考え方自体は有効だけど、GoFはもうきつい。