'2015/12'에 해당되는 글 5건

  1. Shift+Space 한영 전환 2015/12/21
  2. Making git server 2015/12/14
  3. Vec2 ? Point? (2) 2015/12/13
  4. Check items in cocos2d-x, Part 2 2015/12/10
  5. Check items in cocos2d-x 2015/12/07

Shift+Space 한영 전환

from 분류없음 2015/12/21 15:39
처음에 그냥 윈도우를 설치할 때 타입3을 선택해 주면 된다. 그러나, 타입1로 설치하고 난 후에 다시 타입3으로 바꾸려면 따로 설정을 바꿀 수 없으므로 레지스트리를 수정해줘야 한다. 나 같은 경우 리눅스에 vmplayer를 설치하고 윈도우를 깔았는데, 한영키가 동작하지 않고, 오른쪽 Alt키를 눌러야 한영전환이 이루어진다. 그래서 그냥 shift+space로 바꾸려고 하는데, 방법을 찾지 못하다가 오늘 구글링으로 드디어 찾았다. 다음과 같이 해 주면 된다. 1. regedit을 실행한다. 2. \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters밑에 3. LayerDriver KOR의 “kdb101a.dll”을 “kdb101c.dll”로 바꾸고, 4. OverrideKeyboardSubtype을 DWORD로 추가하여 값을 5로 세팅한다. 이제 rebooting을 하고 나면 shift+space로 한영전환이 이루어진다.
2015/12/21 15:39 2015/12/21 15:39

Making git server

from Programming 2015/12/14 01:16
$ git clone --bare my_project my_project.git
$ scp -r my_project.git user@git.example.com:/directory/to/git
$ git clone user@git.example.com:/directory/to/git/my_project.git
2015/12/14 01:16 2015/12/14 01:16

Vec2 ? Point?

from Programming/cocos2d-x 2015/12/13 17:29
Point was refactored to Vector2 and then Vec2.
However, Point was already wide-spread, it was typedef-ed to Point in Vec2.h


2015/12/13 17:29 2015/12/13 17:29
Using camera
auto s= Director::getInstance()->getWinSize();
auto camera= Camera::createPerspective(60, (GLfloat)s.width/s.height, 1, 1000);

// set parameters for camera
camera->setPosition3D(Vec3(0, 100, 100));
camera->lookAt(Vec3(0, 0, 0), Vec3(0, 1, 0));

addChild(camera); // add camera to the scene
Creating orthogonal camera
auto s= Director::getInstance()->getWinSize();
auto camera= Camera::createOrthographic(s.width, s.height, 1, 1000);
Hide objects from camera
// camera
camera->setCameraFlag(CameraFlag::USER1);

// node
node->setCameraMask(CameraFlag::USER1);
2015/12/10 17:28 2015/12/10 17:28
Polygon Sprite and AutoPolygon
Check performance between normal sprite and polygon sprite (area to draw vs. function call count)
auto pinfo= AutoPolygon::generatePolygon("filename.png");
auto spp= Sprite::create(pinfo);
Touch event handling
Widget::TouchEventType
ui::Widget::TouchEventType::BEGAN
ui::Widget::TouchEventType::ENDED
LoadingBar
#include "ui/CocosGUI.h"

auto loadingBar= LoadingBar::create("LoadingBarFile.png");
// set the direction of the loading bars progress
loadingBar->setDirection(LoadingBar:::Direction::RIGHT);

this->addChild(loadingBar);

// something happened, change the percentage of the loading bar
loadingBar->setPercent(25);

// more things happened, change the percentage again
loadingBar->setPercent(35);
TextField
#include "ui/CocosGUI.h"

auto textField= TextField::create("", "Arial", 30);

textField->addTouchEventListener([&](Ref* sender, Widget::TouchEventType type) {
  std::cout << "editing a TextField" << std::endl;
});

// make this TextField password enabled
textField->setPasswordEnabled(true);

// set the maximum number of characters the user can enter for this TextField
textField->setMaxLength(10);

this->addChild(textField);
ParallaxNode
// create ParallaxNode
auto paraNode= ParallaxNode::create();

// background image is moved at a ratio of 0.4x, 0.5y
paraNode->addChild(background, -1, Vec2(0.4f, 0.5f), Vec2::ZERO);

// tiles are moved at a ratio of 2.2x, 1.0y
paraNode->addChild(middle_layer, 1, Vec2(2.2f, 1.0f), Vec2(0, -200));

// top image is moved at a ratio of 3.0x, 2.5y
paraNode->addChild(top_layer, 2, Vec2(3.0f, 2.5f), Vec2(200, 800));
5 types of event listeners
  1. EventListenerTouch - responds to touch events
  2. EventListenerKeyboard - responds to keyboard events
  3. EventListenerAcceleration - responds to accelerometer events
  4. EventListenerMouse - responds to mouse events
  5. EventListenerCustom - responds to custom events
EventDispatcher
  • A node of a lower value of FixedPriority receives events before nodes with higher values
  • SceneGraphPriority is a pointer to a Node. Event listeners with higher z-order values receives events before event listeners have lower z-order values.
Touch Events
// Create a "one by one" touch event listener
// (processes one touch at a time)
auto listener1= EventListenerTouchOneByOne::create();

// When "swallow touches" is true, then returning 'true' from the
// onTouchBegan method will "swallow" the touch event, preventing
// other listeners from using it
listener1->setSwallowTouches(true);

// trigger when you push down
listener1->onTouchBegan= [](Touch* touch, Event* event) {
  // your code
  return true; // if you are consuming it
});

// trigger when moving touch
listener1->onTouchMoved= [](Touch* touch, Event* event) {
  // your code
});

// trigger when you let up
listener1->onTouchEnded= [=](Touch* touch, Event* event) {
  // your code
});

// Add listener
_eventDispatcher->addEventListenerWithSceneGraphPriority(listener1, this);
2015/12/07 10:29 2015/12/07 10:29