1 ポイント 投稿者 GN⁺ 3 시간 전 | 2件のコメント | WhatsAppで共有
  • Rattyは、インライン3DグラフィックスをサポートするGPUレンダリングのターミナルエミュレーター
  • 回転するネズミカーソルを含む
  • サイトでブログ記事を読める
  • サイトでRattyのダウンロードへ移動できる
  • サイトでソースを確認へ移動できる

2件のコメント

 
GN⁺ 2 시간 전
Hacker Newsのコメント
  • ここで何人かがVR活用について話しているが、以前ソフトウェア開発向けの浅い3D UIを少しいじったことがある
    一日中使ってもVACによる眼精疲労が少ないよう、ノートPC画面の数cm奥行き程度の浅い深度で、部屋の中で腕を振り回すというより、3Dで色やレイヤーを加えて描く感覚に近かった
    3Dは、揺れ3D、Webカメラによる頭部/視線トラッキングで作る遠近、シャッター眼鏡のステレオ、XR HMDなどで実現できる。揺れ方式は最も簡単だが、かわいい反面気が散りやすく、遠近のほうがより繊細で邪魔になりにくい
    アプリのステレオ対は、「左右の目用に2つのウィンドウを提供する」か、「左右ビューを交互表示してラベリング/同期/ポーリングする」といった形にでき、このかなりの部分でウィンドウシステム/ウィンドウマネージャ/デスクトップ側の支援が必要になる。ElectronとXを積み重ねて使う方式では、かなり大きなテコが得られた
    テキストを3Dに押し出すのは色付けよりずっと面白く、ごちゃついた見た目を許容するなら、深度で分離した補助情報レイヤーも入れられる。Emacsで文字ごとに深度が持てるようになれば、LispMにもなかった何かが生まれることになる
    ただし、コードテキストのように本質的には3Dではないものの可能性を探るなら、前景/背景色、フォント、Unicode、アニメーションでUXをプロトタイピングするほうがずっと簡単で、ブラウザなら重ねたdivと透過2D/3Dキャンバスを使えばよい

    • 完全に動作する3Dグリフベースのテキストレンダリングシステムがあるのだが、人に見てもらえる形にするのが難しかった
      すべての文字が3D上に配置されたquadで、インスタンシング描画されるので、数千万個以上を扱える。各文字は別々のポリゴンのように個別アドレス指定や変更が可能
      GitHubリポジトリ全体を一度にレンダリングするのに使っていて、ネイティブApple版とWeb版の2つがある。Web版にはIDE構成の基本要素が入っており、洞察や感想を聞きたい
      https://ivanlugo.dev/ide
  • UNIXはREPL体験の面で、いまだにXeroxワークステーションや一般的なLispマシンに追いつこうとしているように見える
    1981年にはすでにインライングラフィックスがあった
    https://youtu.be/o4-YnLpLgtk?t=376

    • ときどき、私たちは1968年のMother of all Demosで既に解かれていたUXを追いかけ続けているだけのように感じる
      まだ見ていない人のために: https://www.youtube.com/watch?v=yJDv-zdhzMY
    • それは3Dではない
    • あるいはTempleOSもある
  • これは気に入った。ターミナルがテキストしか扱えない理由はない
    データサイエンスノートブックは、ターミナルが進化しうる一つの方向を示していて、この分野では面白いことがたくさん起きている。Kittyはおそらくこの分野で最も積極的なイノベーターだろう [1]
    ただ、全体的なビジョンがあるのかはよく分からない
    [1]: https://sw.kovidgoyal.net/kitty/protocol-extensions/

    • 別に進化は必要ない。自分のプロジェクトeuporie [1]を使えば、データサイエンスノートブックをグラフィック画像出力、HTML、LaTeXなど込みで、すべてターミナル内で使える
      [1] https://github.com/joouha/euporie
    • pyvistaがKittyグラフィックスを使って、任意の3D図形をターミナルに直接レンダリングできるようにすることに成功した
      かなり大掛かりなハックで、性能を出すにはshmを使う以外に方法がなかった
      https://git.theresno.cloud/panki/kglobe
    • Terry A Davisはすでにこれをやっていた。当時も今と同じくらいクレイジーだった
    • この3Dグラフィックスをデータサイエンスノートブック、ローカルLLM、統合コーディングハーネス、個人データの可視性と組み合わせれば、とんでもなく素晴らしい何かが生まれるかもしれない
      自分が理想として思い描いていたコンピューティングの未来、「haiku+macOSのマッシュアップ」を超えるかもしれない
    • こういうものがターミナルのサムネイルにも使えるのか気になる
      ふだんはファイルマネージャをクリックして使うより、ターミナルからファイルシステムを見て回るほうを好むのだが、ディレクトリ内の3Dモデル(STL/STEP、3Dプリント用)をターミナルベースのレンダリングで見せるグリッド型のlsがあれば、本当に便利だと思う
      モデルをプレビューして回転確認までできればなお良い
  • 何に使うかはよく分からないが、視覚効果は楽しかったし、Webサイトのブルータリズムデザインも気に入った。古き良き時代の記憶を思い出させてくれた

  • これ、かなり良さそうでは?
    質問がある。レンダリング能力的に2Dもうまく扱えそうに見えるのだが、見当違いだろうか? ターミナルで高品質な2D画像やラスタライズを得る既存の解決策は、たいていあまり良くなかった。これが他の解法より優れている可能性があるのか、それともどこかで根本的な限界にぶつかるのか気になる
    それと、GPUアクセラレーションだとsshではどうなるのかも気になる

    • Kitty graphics protocolはかなり良く、Ghosttyがこれを完全実装している
    • すでにGPUベースのターミナルエミュレータはかなり多い。探しているのはそういうもの?
  • ターミナルがゆっくりとフル機能のWebブラウザになっていっている

    • 「最初からそうだった」ミームがもうすぐ出てきそうだ。もう少し真面目に言うなら、道具の目的は仕事を片付けることで、結局のところこの道具を有用にできるかが問題になる
      正直まだ分からないが、そのうち自分で確かめるつもり :D
    • 欲しかったのはこれだろう…
      https://github.com/fathyb/carbonyl
    • あるいはターミナルはもうフル機能のWebブラウザなのかもしれない
      https://hyper.is/
    • 実際そう見える
  • Terryの冥福を祈る。決して忘れられませんように
    付け加えるなら、このプロジェクトを見ると彼の精神は生き続けているように思える :D

  • これを見て、compizが出てきたときに皆が「自分のウィンドウがキューブの上にある」とか「揺れるウィンドウが必要だ」と言っていた時代を思い出した
    なので案の定、すぐインストールした

    • KDE Plasmaでは今でもそれが使える。かっこいいので揺れるウィンドウを有効にしている
    • あの良い時代を覚えている。compizキューブの一面には、VirtualBoxで動かすWindows XPを専用で置いていた
      いろいろなcompizアニメーション効果つきでWindowsとUbuntuの間を切り替えるのが、魔法のように感じられた
  • リンク先のブログ記事で、新しく提案されたglyph protocol [1]を知ってとても興味を持った
    6か月ほど前にも、まさにこういうものがないことを残念に思っていた [2]
    [1] https://rapha.land/introducing-glyph-protocol-for-terminals/
    [2] https://news.ycombinator.com/item?id=45805072

    • 同感。グリフこそが核心だ
      https://github.com/tikimcfee/glyph3d-js
    • 良いアイデアだと思う。最近見た一部のターミナルプロジェクトと違って、ターミナルでできることの概念を完全に再発明しなくても問題に取り組めている
  • Kitty graphics protocolですでにある程度は可能。Kittyで3Dグラフィックスをレンダリングするデモを作った [1]
    実際に欠けている重要な部分はvsyncで、rattyにもないように見える
    レンダリングが同期されていないと、アプリケーションがフレームバッファに書き込んでいる最中にターミナルエミュレータがそれを読み取り、視覚的アーティファクトが発生することがある
    [1] https://x.com/zack_overflow/status/2035921425341763756?s=20

 
GN⁺ 3 시간 전
Lobste.rsの意見
  • ランディングページからLLMっぽさを感じたのでブログ記事を確認したら、やはりそうだった

    🐁: 「この作業にはAIがどのくらい関わっていましたか?」

    AI支援プログラミングに対する私の立場については、このブログ記事を参照してください
    手短に言えば関与はしていましたが、私が「適当に作った」と見なされるほどではまったくありませんでした
    それはそれでよいのだが、この回答では生成AIが既存の作業を出典を示さずに盗用しがちな傾向や、その他の倫理的な問題は解決されない

    • このタグはAI使用の有無ではなく、バイブコーディングの議論に付けるほうがよいと思う
      使用自体にタグを付けるならプロジェクトの90%に付けることになるだろうし、会話も成果物そのものから外れてしまう。3Dのネズミを表示するターミナルエミュレータを一人がハックして作ったという話が、倫理論争のスレッドになっていくのは望ましくない
    • アイデアの出典として、Terry Davis(Temple OS)と Jeff Reeder、Jim Bergman、Mark Hayton(RIPscript)をクレジットに入れるべきだと考えているのか?
    • 最初は「いいね、友好的な競争が生まれるのかな」と思ったが、掘り下げるほど笑顔が失望に変わっていった
      手早い wow 効果のために少しだけ3Dを入れはしたが、目標は慎重に基礎を考え直すことであるべきだと思う。たとえ私の実験が失敗しても、人間のための人間的な視点の製品を作ったという点は誇りに思っている
      もちろん、彼らが純粋に楽しみのためにやっているのなら、それ自体は問題ない
    • ランディングページのどの部分からLLMっぽさを感じたのか気になる。私には、黒い背景を除けばこの5〜10年で見てきたランディングページとほとんど同じに見える
  • 何度読んでも、いまだにひどく混乱する
    一方では sixel や kitty を見たときのように、ずっと「なぜ?」という気持ちになる。根本的にテキスト指向のインターフェースにグラフィックスを載せるのはクールだが、実用的には見えない。もちろん curses や slang に対しても同じ反論はできる
    もう一方では、3Dレンダリングのプロトコル/表示をどうにか Emacs の中に入れられないか気になってくる。何に使うかはまったく分からないが、このプロジェクトのように本当にクールそうだ

  • 夕方の数時間を使って、自分の Haskell CAD フレームワークが Ratty で読める形でオブジェクトを出力するようにしてみた
    かけた時間の割にはかなり可能性がありそうだったが、「オブジェクト配置」コマンドがもう少し設定可能だとよかった。REPL 出力内にスペースを作ることや、オブジェクトのサイズ調整まで自前で処理してくれることを期待していた
    それと、Ratty がassets フォルダ外のファイルを読み込めないのは少し残念だ。スクロールも少し壊れているようで、オブジェクトが消えるにはまだ早いタイミングで消えてしまうのをよく見た。ただ、こちらが何か間違えていただけかもしれない