Skip to content

Instantly share code, notes, and snippets.

@hexagit
hexagit / TestCode.cs
Created April 26, 2018 11:15
TestCode
/// <summary>
/// JSON読み込みユーティリティ
/// 参考URL : http://takachan.hatenablog.com/entry/2017/01/18/120000
/// </summary>
public static class JsonUtility
{
public static string GetFileString(string filePath)
{
StreamReader file = new StreamReader(filePath, Encoding.UTF8);
return file.ReadToEnd();
using System;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.Runtime.InteropServices;
using Microsoft.VisualStudio;
using Microsoft.VisualStudio.OLE.Interop;
using Microsoft.VisualStudio.Shell;
using Microsoft.VisualStudio.Shell.Interop;
@hexagit
hexagit / 20180206_Bitmap.cs
Created June 22, 2018 05:08
ニアレストネイバー法
using System;
using System.Collections.Generic;
using System.Threading;
using UnityEngine;
using UnityEngine.Assertions;
public partial class Bitmap
{
public uint width { get { return _width; } }
public uint height { get { return _height; } }
@hexagit
hexagit / 20180622_Bitmap_Bilinear.cs
Created June 22, 2018 05:13
バイリニア法
using System;
using UnityEngine;
public partial class Bitmap
{
private struct BilinearInterpolator
{
public float ratioX;
public float ratioY;
@hexagit
hexagit / select_object_from_camera.py
Created June 26, 2018 12:14
Mayaで現在のカメラに表示されているメッシュを選択する
# -*- coding: utf-8 -*-
#===========================================
# 現在のカメラに表示されているオブジェクトを選択する
#===========================================
import maya.OpenMaya as om_1
import maya.OpenMayaUI as omUI_1
# 現在選択されているビューの取得
currentView = omUI_1.M3dView.active3dView()
@hexagit
hexagit / get_collide_from_ray.py
Created June 26, 2018 12:22
Mayaで指定ベクトルの衝突判定を行う
# -*- coding: utf-8 -*-
#===========================================
# カメラから直線方向にある選択メッシュに対してRayを飛ばす
# (視野角は考慮してないんでカメラは方向だけです。)
#===========================================
import maya.api.OpenMaya as om
# vector用カメラの諸々を取得
camera_selList = om.MGlobal.getSelectionListByName("camera1")
@hexagit
hexagit / Pos_to_UV_and_UV_to_Pos.py
Created June 26, 2018 12:27
Mayaで位置をUVに変換とUVを位置に変換
# -*- coding: utf-8 -*-
#===========================================
# UV座標に対応するワールド座標とワールド座標に対応するUV座標
#===========================================
import maya.api.OpenMaya as om
# メッシュもろもろ取得
mesh_selList = om.MGlobal.getActiveSelectionList()
mesh_dag = mesh_selList.getDagPath(0)
mesh_MFn = om.MFnMesh(mesh_dag)
@hexagit
hexagit / PrintScope.cpp
Last active July 20, 2018 08:06
アクセス違反でゲームエンジンが落ちないようにしよう!スコープの開始と終了を出力する
// スコープの開始と終了を出力する
struct PrintScope
{
// コンストラクタ
PrintScope(const char* name)
: _Name(name)
{
std::cout << _Indent << "Start " << _Name << std::endl;
_Indent.push_back(' ');
}
@hexagit
hexagit / ExceptionFactory.cpp
Created July 20, 2018 08:09
アクセス違反でゲームエンジンが落ちないようにしよう!例外を生成する
// 例外を生成する
struct ExceptionFactory
{
// アクセス違反を発生させる
static void AccessViolation()
{
PrintScope scope("AccessViolation");
*((int*)0) = 0;
}
@hexagit
hexagit / SE_TransFunc.cpp
Last active July 20, 2018 08:29
アクセス違反でゲームエンジンが落ちないようにしよう!構造化例外時に呼ばれる
// とくに意味のない適当な関数
void Exec()
{
PrintScope scope("Exec");
// 例外がいっぱい
ExceptionFactory::AccessViolation();
//ExceptionFactory::DivideByZero();
//ExceptionFactory::StackOverflow();
}