ogamita777のブックマーク (884)

  • 床井研究室 - 第3回 シェーダプログラム

    固定機能の廃止 レンダリングパイプラインにおいて固定機能ハードウェアで実装されていた機能が廃止された場合, それらをシェーダで実装しなければ図形を描くことができません. このため, OpenGL を使ってプログラムを書く際には, CG の基礎的な理論に関する知識が必須になりました. CG の授業をしていて, 内心で「でもこれはハードウェアに組み込まれてるんだよな」とか思ったりしてましたけど, 無駄ではなかったんだと胸をなでおろしていたりします. シェーダプログラムとラスタライザ アプリケーションプログラムは, 描画する基図形を指定した後, 頂点情報を GPU に送ります. 頂点情報はバーテックスシェーダの attribute 変数に格納され, これを用いて座標変換や陰影計算などを行います. 頂点の座標値はクリッピング座標系に変換して, バーテックスシェーダの出力変数 gl_Positio

    床井研究室 - 第3回 シェーダプログラム
  • Android | リソースタイプとファイルの設置

    リソースには画像や文字列など色々なタイプがあり、タイプに応じて配置するディレクトリが決まっています。ここではリソースの種類と配置方法について解説します。 1.リソース用サンプルプロジェクトの作成 2.リソースタイプ 3.リソースの作成と設置 リソース用サンプルプロジェクトの作成 まずリソースに関して色々なテストを行うためのプロジェクトを一つ作成しておきます。作成方法は「Androidプロジェクトの作成」を参照して下さい。 プロジェクト名 : Sample2 アプリケーション名 : Sample2 パッケージ名 : jp.javadrive.sample2 Activity : Sample1Activity Minimum SDK : 10 (Android 2.3.3) 次のように作成されました。 今後はこのプロジェクトを使って色々試していきます。 それでは先程作成したプロジェクトのパッ

    Android | リソースタイプとファイルの設置
  • android-ndk-r5b NativeActivityのテスト – 記録

    android-ndk-r5からNativeActivityが使えるようになったので試しに使ってみました。 NativeActivityのリファレンス を見つつ、サンプルプログラム(native-activity)を削っていって必須部分を試してみたら、 最小だと思われるプログラムは以下のようになりました。 NativeActivityは2通りの実装方法があるようですが、今回はnativeから android_native_app_glue を使うだけで動くらしい楽な方。 まずjava側の準備としてeclipseで空のプロジェクトを作って AndroidManifest.xml に以下の内容を追加。 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/re

  • NativeActivity から OpenGL ES 2.0 で三角形を描画する - 凹みTips

    はじめに NDK で NativeActivity から OpenGL ES 2.0 使って何かしようと思うと、EGL で初期化する処理を書いたりと、Java で GLSurfaceView 使うよりも手間がかかります。動作させるまで結構時間かかったのでまとめておきます。 三角形の描画 android-ndk/samples/native-activity と android-ndk/samples/hello-gl2 を参考にします。native-activity は glClearColor をセンサ/時間に応じて変えるだけのものですが、EGL の初期化手順が載っています。hello-gl2 は初期化は Java で行っているのですが、JNI を通じて C++ で書いた GL ES 2.0 の API 利用部分を呼び出しているコードが書いており、GL ES 2.0 部分を参考にすること

    NativeActivity から OpenGL ES 2.0 で三角形を描画する - 凹みTips
  • 上智大学 鷲谷修也さん | 就職ジャーナル

    わしや・なおや●1988年北海道登別市生まれ。小学校3年から野球を始め、中学時代は地区内のリトルシニアチームに入り、3年次に道大会で準優勝。その後、駒澤大学附属苫小牧高等学校にスポーツ特待生として入学し、野球部に所属。2005年の第87回全国高等学校野球選手権大会優勝、および06年の第88回全国高等学校野球選手権大会準優勝メンバー。07年8月、アメリカ・カリフォルニア州のデザート短期大学に入学し、同大学野球部に所属。08年6月、米ドラフト会議でMLB(メジャーリーグベースボール)ワシントン・ナショナルズに42巡目で指名を受けるも辞退。09年6月、再び同球団から14巡目で指名され、これを許諾。日人では2人目となる米ドラフト指名契約選手に。同年のガルフ・コーストリーグ(MLBマイナーリーグの下位クラス)では40試合に出場し、チームのリーグ優勝に貢献。10年6月、肩のけがによる不調などを理由に

    上智大学 鷲谷修也さん | 就職ジャーナル
  • http://homepage2.nifty.com/nandemoarchive/toukei_hosoku/kanchigai_asuta.htm

    ★ まずは有意水準の確認 0.1%の有意水準 = 0.001 1%の有意水準 = 0.01 5%の有意水準 = 0.05 求めたp値が上の値よりも小さければ帰無仮説を棄却することができたわけです。例えば求めたp値が0.023であった場合は0.023<0.05となるので5%の有意水準で有意差が認められたといえます。逆に求めたp値が0.178であった場合は0.178>0.05ですから5%の有意水準で有意差は認められないといえます。 ~重要なポイント~ 有意水準~%で検定を行う = ~%の危険率で第1種の誤りを犯す ⇒ 例えば5%の有意水準で検定を行えば,100回同じ検定をした場合に5回は誤った結果を得る。これが1%の有意水準で検定を行えば,100回に1回は誤った結果を得るということになります。0.1%の有意水準であれば100回に1回も失敗しないということ。 ★ 結論 アスタリスクの数が多いこと

  • 私のための統計処理ー検定ー2群の比較

    1■対応のない2群の比較検定---独立した2群のデータに有意差があるか?(---棒グラフが適)

  • アフィン変換とは - 大人になってからの再学習

    幾何学の分野で、ある図形を回転させたり引き延ばしたりする変換をアフィン変換と呼ぶ。 もう少しきちんと説明すると、「アフィン変換とは平行移動と線形変換を組み合わせた変換」のこと。 平行移動はわかるけど、線形変換って? 線形変換とは、「変換の前に直線だった場所は、変換後も直線のまま保たれる」変換のこと。直線が変換によって曲がったりしない。ということ。 さらに、「直線上に点A,B,Cが並んでいたとき、変換の前後でAB:BCの比が変化しない」。線の形が変わらないから線形変換という、と覚えてしまって構わない。 で、アフィン変換って具体的にはどのような変換? 具体的には、線形変換(拡大縮小、剪断、回転)、平行移動があり、これらの組み合わせで表現される。 2次元の図形であれば、線形変換は元の座標に2x2の行列を掛けることで表現できる。平行移動は2次元のベクトルの加算で表現できる。 つまり、次のように表す

    アフィン変換とは - 大人になってからの再学習
  • Android で OpenGL を利用する方法 - Android 開発入門

    ここでは Android で OpenGL を利用するための基的な方法について記載します。 ただし OpenGL を利用したプログラミング自体がはじめて、という人も少なくないと思いますから、 アクティビティなどの Android 特有の話題と OpenGL 固有の話題をあまり明確に分けずに順序立てて解説していこうと思います。 OpenGL のエキスパートの方で、 Android の開発をこれからはじめる、、、という方には少々冗長な話になってしまうかもしれませんが、そこはご勘弁ください。 OpenGL を利用する Android アプリケーション基構成 OpenGL を利用する基的な Android アプリケーションで登場する要素は主に次の図のようなものになります。 まず Activity は、 ご存知のとおり OpenGL を利用してもしなくても Android アプリケーションを構

    Android で OpenGL を利用する方法 - Android 開発入門
  • http://homepage2.nifty.com/nandemoarchive/toukei_hosoku/ryougawa_katagawa.htm

    <<目次へ 片側検定と両側検定のちがい いろいろな参考書をみると「有意水準0.05で片側検定しなさい」とか、あるいは巻末の分布表のところで「両側検定のにおける棄却の限界値」などという表現を見かけるでしょう。ところが実際に「片側検定と両側検定ってなんスか?」と思っている人もそう少なくはないはずです。それは「この場合はこの部分を見ればよいのだ」とマニュアル通りの方法で検定を行っているために起こる現象で、初段階ではむしろ当然のことでもあります。 しかしながら、最初はそのようなマニュアル通りの"サル真似"でも良いでしょうが、ある程度学習が進んでくるといつまでも首をかしげているようでは格好悪いです。というわけで、ここでは片側検定と両側検定の違いをしっかりと区別できるようになりましょう。 帰無仮説は1つ、対立仮説は・・・ 帰無仮説とは"棄却することを前提として立てる仮説"でしたがこの仮説は1つしかあ

  • Shared Object(.so)の勉強 - ぱせらんメモ

    いつの間にかはてなダイアリー市民になっていた。 立ち上げが去年の10月だったので1年以上かかったことになる。おせぇ。月に多くて5エントリぐらいだしな。 30日に1回は書いてないと剥奪されてしまうらしいので頑張って書いてみるぜ。 普段はPHPでWebシステムの開発をしているというのに、突然.soな共有ライブラリを扱った仕事が舞い込んできたのでお勉強。 C/C++自体はDOSやWindowsでよくやっていたのだがLinux上での開発は初めてだ。 WinMain()から始まってメッセージループがあってWindows API使いまくり、みたいな開発は得意だがLinuxはさっぱりわからん。 同じ言語でも土俵が違うだけで結構辛い戦いが予想される。ていうか、OSの違い以前にGUIとCUI(今回はCUIどころかアプリでもない)ってだけでも全然違うのに、「C言語できるんでしょ?」みたいなのはやめてほしい。

    Shared Object(.so)の勉強 - ぱせらんメモ
  • シェルスクリプト入門 書き方のまとめ | Memo on the Web

    シェルスクリプト入門として, 基的な書き方をまとめました. 長いですが, 1ページにまとめてみました. 良かったら目次も参考にしてご覧になって下さい. 目次 シェルスクリプトとは 作り方, 実行の仕方 コメント ユーザーからのキーボード入力を受け付ける 変数 通常の変数 特別な変数 演算子 数値計算演算子 比較演算子 コマンドを繋げる演算子 条件文に使える比較演算子 条件文 制御構文(分岐) if文 case文 制御構文(ループ) for文 while文 until文 select文 文字列処理 文字列置換 削除 複数行のテキストの出力(ヒアドキュメント) 関数 シェルスクリプトとは シェルスクリプトとは, シェルの動作をまとめて記述したスクリプトのことです. 決められた文法にしたがって処理を記述することによって, シェルでの処理をまとめて行ったり, 作業を自動化できたりします(例 複数

  • クラス設計の原則 — みんなのウェディングエンジニアリングブログ

    みんなのウェディングの高井です。 クラスベースのオブジェクト指向プログラミング言語を利用している人であれば、クラスとは、ありふれていて普段から利用するものです。にもかかわらず、良いクラスをつくるというのは、なかなかに難しいことです。 先日、みんなのウェディングでアルバイトをしてくれている学生さんのコードレビューをしていたときにも、それを強く感じました。 実践的プラグマティックには「ソフトウェアの規模や文脈にあわせて、適切に抽象化していただきたい」という以上のことを言っても仕方がないところなのですが、それだけでは経験の浅いプログラマーにとって、まったく分からないという話になってしまいます。 というわけで、今回はクラス設計の原則についてのお話しです。 Bertrand Meyerのクラス設計の原則 Bertrand Meyerは『オブジェクト指向入門 第2版』の中で、クラス設計について章をひと

    クラス設計の原則 — みんなのウェディングエンジニアリングブログ
  • Stackoverflow活動で得たノウハウなど - koogawa blog

    どうも、Stackoverflow活動中の koogawa です。 Stack Overflow活動 がんばるぞい from Kosuke Ogawa 毎日少しずつ、自分が力になれそうな質問に回答していった結果、おかげさまで日 1000 reputation を突破しました!\(^o^)/ というわけで、今回はStackoverflow活動の中で得たノウハウや、おすすめの使い方をまとめてみたいと思います。 回答じゃないならコメントで たまに質問に対して 「情報が少なすぎて答えようがない」 「試してないけど、多分できるんじゃない?」 といった回答をしている人がいますが、それは「回答」ではないですね。(ひどい場合は回答がdown voteされることもあるので注意) reputation が 50 以上あれば、質問に対してコメントをつけることができるので、不足している情報を質問者から聞き出すと

    Stackoverflow活動で得たノウハウなど - koogawa blog
  • Android NDKでJNIを使用してアプリを高速化するには

    AndroidアプリのソースコードにJNIを組み込むには? nativeメソッドの宣言 JNIを使用するには、「native」というキーワードを持つメソッドをクラス内に宣言します。今回は、以下の2つを宣言しました。

    Android NDKでJNIを使用してアプリを高速化するには
  • Google Sites: Sign-in

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode

  • 帰ってきたネコブログ » NDKを使ってみた

    もちろん、NDKを使ってライフゲームをもっと早くするというお話です。 まず、最初にやったのはNDKのセットアップ、 「Android ndk」とかで検索すれば、その手順が出てきます。 自分の場合はホームディレクトリに”Develop”フォルダを作って、 そこにまとめてインストールしています。 ~/Develop ├── android-ndk-r6b ├── android-sdk-linux_x86 ├── eclipse └── workspace この”android-ndk-r6b”が、現在使用してるNDKです。 なので、”.bashrc”には、以下の記述を追加しています。 export PATH=${PATH}:~/Develop/android-sdk-linux_x86/tools export PATH=${PATH}:~/Develop/android-ndk-r6b あ

  • NativeActivityクラスを用いたアプリケーションを実行する。Nativeな言語を用いて高速化する。 | TechBooster

    Android SDK 2.3の公開に伴い、Android NDK Rev 5も公開され、NativeActivityクラスが利用できるようになりました。NativeActivityクラスを利用すれば、Nativeな言語(CもしくはC++)のみで、Androidアプリケーションが作成できます。 Nativeな言語で記述することで処理が高速になり、そのことで、OpenGL などを用いたアプリケーションや、グラフィカルなゲームアプリケーションの分野で特に有利になってくる可能性があります。 これまでもJNIを用いて一部の処理をNativeな言語で記述し、javaで呼び出すことで高速化を計ることは可能でしたが、NativeActivityでは、Nativeな言語のみでアプリケーションを作成することができるため、さらなる高速化が期待できます。 今回は、C言語で記述されたアプリケーションをビルドし、エ

  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年10月時点の調査。

  • よくみる extern "C" {} と __cplusplus - はこべにっき ♨

    C向けのライブラリのコードをながめていたらちょくちょく以下のようなコードをみる. #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /* Cのコードがたくさん */ #ifdef __cplusplus } #endif /* __cplusplus */ なんだろうと思って調べてみたら. __cplusplus g++でコンパイルされるとdefineされるマクロ extern "C" { /* Cのコード */ } ブレースでかこまれた範囲で,リンカでの識別子の扱い方がCスタイルになる らしい."この範囲のコードはCで書かれてるから,g++でコンパイルするときはCだとおもってよろしくしてあげてね"ってことみたい. Cで書かれたライブラリはCで使われることもC++で使われることもあるから,こういうコードでうまくその差を吸収して

    よくみる extern "C" {} と __cplusplus - はこべにっき ♨